Tutoriales no image

Publicado el 15-06-2006 | por admin

HowTo de World of Warcraft en Wine

World of WarcraftEn este HowTo encontrareis las instrucciones paso a paso para poder jugar a World of Warcraft, el famoso MMORPG de Blizzard, en GNU/Linux mediante Wine.

Hace tiempo que el juego World of Warcraft funciona con Wine. El juego desde una instalación típica de Wine es jugable, puedes dar vueltas, matar unos cuantos bichos, subir niveles, hacer algunas misiones, etc.

Para jugar de esta forma simplemente hay que tener Wine instalado (la última versión si es posible), instalar WoW y ejecutar el juego con el comando:

wine WoW.exe -opengl

Pero hay un problema, no se pueden seleccionar determinados objetos dentro del juego, entre ellos los rivales caídos para poder coger sus pertenencias. Esto hace que cueste mucho más conseguir objetos y subir de nivel, incluso no es posible realizar determinadas misiones debido a esto.

Este fallo se debe a el uso especial que hace WoW del modelo de memoria en Windows NT y derivados. Existe un parche específico para arreglar este fallo que se puede aplicar al código fuente de Wine y así poder compilar una versión compatible con WoW. Si existe dicho parche desde hace tiempo, ¿por que no se incluye oficialmente en Wine para que funcione WoW sin necesitar el parche?

La respuesta la comentan en el Wine Issue 315, poder se podría hacer aplicando el parche de tal manera que funcione sólo cuando se esté ejecutando WoW, de hecho es lo que se hace en Cedega para que funcionen este y otros juegos. Pero debido a la política de desarrollo de Wine, en este proyecto no se aceptan parches específicos de una aplicación para arreglar bugs concretos, para corregir el problema existente con WoW sería necesario hacer un profundo cambio en el modelo de memoria de Wine y actualmente no hay desarrolladores con la habilidad y tiempo necesarios para llevar a cabo dicho cambio.

Por estas razones y ya que WoW es un juego que demandan muchos usuarios de Wine, en Wine Aplicattion Database, en el apartado dedicado a WoW, hay un completo HowTo sobre como aplicar el parche, actualizado y verificado regularmente con la última versión de Wine. A continuación os pongo una traducción de dicho HowTo con la última versión disponible en el momento de escribir este artículo.

HowTo de World of Warcraft en Wine

A lo largo del HowTo se va a suponer que se está trabajando con la última versión de Wine, la 0.9.17 en estos momentos (11-07-2006), que se tiene correctamente instalada la aceleración 3D en el ordenador, y que los CDs de World of Warcraft funcionan correctamente, no tienen pegotes de pizza, marcas de café, mordiscos, etc. Se intentará actualizar lo más regularmente posible este HowTo, aunque para ver la última versión disponible dirigirse al original en inglés.

En este HowTo se va a describir como conseguir la última versión del código fuente de Wine, como aplicar los parches necesarios para poder jugar correctamente a WoW, como compilar Wine, iniciar Wine por primera vez, descargar las dlls necesarias y realizar los cambios necesarios en el fichero Config.wtf para poder jugar al juego.

Es importante seguir los pasos uno por uno para poder terminar el proceso con éxito.

NOTA PARA UBUNTU: Si eres usuario de Ubuntu Dapper Drake (para el resto de versiones de Ubuntu no es válido), quizás te interese utilizar el paquete compilado, con el parche ya aplicado, que se puede encontrar en la sección sobre Wine del wiki de Ubuntu. Instalando este paquete no son necesarios los pasos 1 y 2 de este HowTo.

1- Descargando los ficheros bz2 de Wine y el parche necesario para World of Warcraft:

El parche soluciona los problemas de selección de personajes y objetos además de un problema con los Shaders en tarjetas Nvidia.

– Hay que descargar en un directorio vacío los ficheros wine-0.9.17.tar.bz2 y el parche wow.new.patch.0.9.17 (el parche realmente se llama wow_patch_0.9.16.diff pero funciona sobre las versiones 0.9.16 y 0.9.17)

El parche modifica los ficheros ../libs/wine/mmap.c, ../dlls/x11drv/opengl.c, ../dlls/opengl32/wgl.c y ../loader/preloader.c

2- Aplicando el parche a Wine, compilando e instalando:

– Comprobar que se tiene instalado el compilador gcc, no importa la versión, simplemente comprobar que el siguiente comando devuelve la versión de compilador que tengas:
gcc --version

– Dentro del directorio donde se han descargado los ficheros anteriores, ejecutar los comandos:
tar -xvjf wine-0.9.17.tar.bz2 // para descomprimir el fichero que contiene Wine en un directorio llamado wine-0.9.17
cd wine-0.9.17 // cambiar al directorio wine-0.9.17

– Copiar el fichero wow_patch_0.9.16.diff en este directorio.

patch -p0 < wow_patch_0.9.16.diff // aplicamos el parche

Si todo ha ido bien hasta aplicar el parche, debería aparecer por pantalla lo siguiente:
patching file dlls/opengl32/wgl.c
Hunk #1 succeeded at 589 (offset -1 lines).
patching file dlls/winex11.drv/opengl.c
Hunk #1 succeeded at 554 (offset -53 lines).
patching file libs/wine/mmap.c
patching file loader/preloader.c

Ahora es el momento de compilar Wine:
– Desde el directorio wine-0.9.17 ejecutamos:
./configure // importante: hay que poner especial atención a la salida de configure, porque si no finaliza correctamente no será posible continuar. Si ocurren errores es porque falta alguna librería por instalar, hay que fijarse bien en la salida del error e instalar todas las librerías necesarias. Una vez instaladas volver a ejecutar el configure. A mi por ejemplo me pedía que instalara la librería FontForge, la instalé y pude ejecutar el configure sin errores. Podéis consultar la lista de paquetes necesarios para compilar Wine en su wiki, también para máquinas de 64 bits.

make depend
make
// con esto se inicia la compilación de Wine. Es el momento de tomarse, según el gusto, un café o una cerveza bien fría mientras se espera. Una vez terminado verificar que no ha habido ningún error.

El siguiente paso hay que realizarlo como usuario root porque hay que copiar los ficheros de Wine a su lugar predeterminado, antes de realizar esto se aconseja desinstalar la anterior versión de Wine que se tuviera instalada. Para copiar los ficheros ejecutamos:
su // este comando nos pedirá la contraseña de root
make install // con este comando se copiarán los ficheros de Wine en el lugar correcto
exit // con este comando dejamos de ser root

winecfg // con esto ejecutaremos la utilidad de configuración de Wine. Si no existía el directorio .wine en el home del usuario se creará, si dicho directorio ya existía de alguna instalación anterior de Wine no hay problema, no hará falta reinstalar las aplicaciones ya instaladas (tampoco WoW si fuera el caso).

wine --version // con esto verificamos que la versión que estemos ejecutando de Wine es la que acabamos de instalar. En caso de no coincidir nos hemos equivocado en algún lugar del proceso.

3- Ficheros dll necesarios:

Para continuar el proceso es necesario instalar la siguiente dll de windows:
mfc42.dll
Hay que copiarla en el directorio /home/[usuario]/.wine/drive_c/windows/system32/

Si el instalador falla al pulsar en el botón de Instalación, probablemente falten estas otras dos dll’s:
riched20.dll
riched32.dll
Después de copiarlas al directorio System es necesario activarlas durante la instalación de WoW en la sección «dll overide» o «remplazos de dll» que hay en winecfg (escribir winecfg en un terminal).

4- Instalando World of Warcraft:

El siguiente proceso variará un poco dependiendo de la distribución utilizada, en caso de no funcionar este método de instalación consultar en el HowTo oficial la sección dedicada a Suse. A partir de ahora se asumirá que el directorio donde se montan los cdrom es /mnt/cdrom, en caso de ser otro en tu distribución adaptar los comandos según corresponda:

cd /mnt
Insertar el primer CD del juego.
mount cdrom
wine cdrom/installer

Se iniciará la instalación, cuando pida el siguiente CD hacer lo siguiente:
umount cdrom
Insertar el CD.
mount cdrom
Pulsar el el botón OK/Continuar.

Si todo ha ido bien finalizará la instalación de WoW.

5- Configuración de World of Warcraft:

A continuación vamos a hacer unas pequeñas modificaciones al fichero Config.wtf que se encuentra dentro del directorio WTF de World of Warcraft.

Añadimos las siguientes lineas al inicio del fichero:
SET gxApi "opengl" // fuerza a WoW a usar el modo OpenGL
SET ffxDeath "0" // esta opción deshabilita los efectos visuales cuando muere el personaje, ya que consume muchos recursos (gracias a Kronoss por el aviso)

Si al jugar no tenemos sonido, o este se escucha mal, añadir las siguientes lineas:
SET SoundOutputSystem "1"
SET SoundBufferSize "150"

Para algunas tarjetas de sonido Intel integradas, podría funcionar mejor este parámetro:
SET SoundBufferSize "232"

Si el juego no arranca, prueba a cambiar/añadir la siguiente variable en el fichero Config.wtf:
SET pixelShaders «0»
Esto desactiva los efectos de shaders, que en algunos casos puede dar problemas.

6- Iniciando World of Warcraft:

Abrimos un terminal e introducimos los siguientes comandos:
cd "/home/[usuario]/.wine/drive_c/Program File/World of Warcraft" // Entramos en el directorio donde está instalado WoW, Program File en algunos casos es «Archivos de programa»

Para iniciar por fin WoW:
wine WoW.exe

En el caso de usar Fedora Core 5, utilizar el siguiente comando para iniciar el juego:
setarch i386 -L wine WoW.exe -opengl

7- IMPORTANTE- Consultas sobre el HowTo:

Para terminar agradecería que las consultas sobre este HowTo se realizaran en el foro de LinuxJuegos, concretamente en la sección sobre Wine, no el los comentarios de este HowTo.

Para realizar una nueva consulta escribir al inicio del Asunto la cadena [HowTo WoW], así se podrá usar la función de búsqueda en el foro con más facilidad para identificar los post sobre este HowTo y poder dar respuestas más concretas y evitar repetir varias veces lo mismo.

Antes de hacer una consulta revisar que se han seguido todos los pasos de este HowTo y se ha consultado el foro para ver si alguien ha tenido el mismo problema para no repetir preguntas. He puesto un par de post (1 y 2) en el foro de ejemplo sobre unas dudas que me surgieron a mi durante la instalación y durante el juego.

Actualizaciones:
– 11-07-2006: Actualizado el HowTo ha la versión 0.9.17 y modificados algunos pasos.
– 24-06-2006: El HowTo ha sido actualizado con la versión 0.9.16 de Wine y se han añadido/actualizado algunas cosas para casos donde podría haber problemas.


Sobre el autor



Back to Top ↑