miércoles, 3 de diciembre de 2008

Emulando Guitar Hero 3 en Wine

guitar_hero_3

Para instalar el Guitar Hero 3 en linux hay que tener instalado wine.

En Ubuntu o Debian:
# apt-get install wine

Luego procedemos a la instalación del juego:

  1. Hacemos doble-click en el instalador del juego y realizamos nuestra típica instalación Windows.

  2. Después hay que copiar el crack, y la pregunta es: ¿dónde se encuentra ubicado el juego?, bueno, si no modificamos el directorio de instalación por defecto, el juego se encontrará en $HOME/.wine/drive_c/Archivos de programa/Aspyr/Guitar Hero III. Copiamos el crack ahí y ya estaríamos en condiciones de ejecutar el juego.

  3. Si al ejecutarlo sale un cartel que dice que la memoria virtual está desactivada o algo parecido hacemos lo siguiente. Copiamos el texto que aparece a continuación y lo pegamos en un archivo que se llamará virtualmemory.reg:
    [HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Session Manager\Memory Management]
    "ClearPageFileAtShutdown"=dword:00000000
    "DisablePagingExecutive"=dword:00000000
    "LargeSystemCache"=dword:00000000
    "NonPagedPoolQuota"=dword:00000000
    "NonPagedPoolSize"=dword:00000000
    "PagedPoolQuota"=dword:00000000
    "PagedPoolSize"=dword:00000000
    "SecondLevelDataCache"=dword:00000000
    "SystemPages"=dword:00000000
    "PagingFiles"=hex(7):43,00,3a,00,5c,00,70,00,61,00,67,00,65,00,66,00,69,00,6c,\
    00,65,00,2e,00,73,00,79,00,73,00,20,00,31,00,30,00,30,00,20,00,31,00,35,00,\
    30,00,30,00,00,00,00,00
    "PhysicalAddressExtension"=dword:00000000
    "SessionViewSize"=dword:00000030
    "SessionPoolSize"=dword:00000004
    "WriteWatch"=dword:00000001

    [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management]
    "ClearPageFileAtShutdown"=dword:00000000
    "DisablePagingExecutive"=dword:00000000
    "LargeSystemCache"=dword:00000000
    "NonPagedPoolQuota"=dword:00000000
    "NonPagedPoolSize"=dword:00000000
    "PagedPoolQuota"=dword:00000000
    "PagedPoolSize"=dword:00000000
    "SecondLevelDataCache"=dword:00000000
    "SystemPages"=dword:00000000
    "PagingFiles"=hex(7):43,00,3a,00,5c,00,70,00,61,00,67,00,65,00,66,00,69,00,6c,\
    00,65,00,2e,00,73,00,79,00,73,00,20,00,31,00,30,00,30,00,20,00,31,00,35,00,\
    30,00,30,00,00,00,00,00
    "PhysicalAddressExtension"=dword:00000000
    "SessionViewSize"=dword:00000030
    "SessionPoolSize"=dword:00000004
    "WriteWatch"=dword:00000001

    [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Cryptography\RNG]
    "Seed"=hex:ac,28,70,71,d1,c7,76,6e,33,06,81,61,85,59,1f,67,58,c1,88,11,b0,d7,\
    43,04,40,43,af,73,d8,1f,c0,6b,73,cd,0c,72,2a,c4,e6,3c,1a,51,98,f3,e1,ad,0e,\
    d8,9a,6a,86,7b,1e,e6,97,23,b1,61,3e,4e,97,73,9b,03,d8,78,dc,f6,f2,fb,1e,2b,\
    a0,70,a0,97,2e,98,d7,17


  4. Luego ejecutamos en consola:
    $ wine regedit


  5. Vamos a Registro -> Importar archivo de registro... y seleccionamos el archivo que acabamos de crear.

  6. Finalmente, el juego estará listo para ejecutarse.


Anda muy bien este juego, el único problema es la configuración del teclado, al querer configurarlo desde el juego se traba la ventana y hay que matar el proceso. La única manera de configurar las teclas es desde el archivo de configuración del juego, para ello hacemos lo siguiente:
$ cd "$HOME/.wine/drive_c/windows/profiles/$USER/Configuración local/Datos de programa/Aspyr/Guitar Hero III"

$ vim AspyrConfig.xml

y escribimos lo siguiente dentro del archivo:
1 <?xml version="1.0" encoding="utf-8"?>
2 <r>
3 <s id="Video.Width">800</s>
4 <s id="Video.Height">600</s>
5 <s id="Options.GraphicsQuality">1</s>
6 <s id="Options.Crowd">0</s>
7 <s id="Options.Physics">0</s>
8 <s id="Options.Flares">0</s>
9 <s id="AudioLagReminderShown">1</s>
10 <s id="Sound.SongSkew">-0.1</s>
11 <s id="Debugging.FullScreen">0</s>
12 <s id="Video.MultiSampleQuality">0</s>
13 <s id="Video.MultiSampleType">0</s>
14 ?
15 <s id="6f1d2b61d5a011cfbfc7444553540000">237 238 239 240 241 318 245 244 235 316 311 245 243</s>
16 </r>

Nota: los números son los números de línea que agrega el vim, no hay que escribirlos.

Los números 237 238 239 240 241, etc, son las teclas asignadas (a cada tecla del teclado y mouse le corresponde un número que mas adelante especifico) y esto es lo que tenemos que hacer manualmente, ya que si queremos hacerlo desde el juego, se nos tilda.

La cuestion es es la siguiente; independientemente del orden en que les aparezcan los colores de las "cuerdas en la guitarra" en el juego, el orden de las mismas en el archivo es siempre el mismo, por ejemplo: Verde=237 rojo=238 amarillo=239 azul=240 naranja=241 el 235 representa el strend (sería cuando se le da con la púa a la cuerda de la guitarra) que sería en este caso la tecla shift, el 316 es el otro strend (uno es down y otro up) y el 318 es la barra, que representa start power, que es cuando usan el overdrive. Solamente esas son las teclas que nos interesan.

Esta es la lista de la asignación de tecla/numero:

F1: 237
F2: 238
F3: 239
F4: 240
F5: 241
F6: 242
F7: 243
F8: 244
F9: 245

LAS TECLAS F10, F11 Y F12 no las detecta. Seguimos...

Click izq mouse: 400
Click der mouse: 401
Click centro (o click de scroll): 402
º (abajo del Esc): 253

Números, pero no los del teclado numérico, sino los que estan sobre las letras:

0: 200
1: 201
2: 202
3: 203
4: 204
5: 205
6: 206
7: 207
8: 208
9: 209
': 273
¡: 234

Backspace: no la detecta
Tabulación: 323
q: 304
w: 331
e: 232
r: 305
t: 322
y: 341
u: 324
i: 256
o: 295
p: 297
` (a la derecha de la p): 263
+: 306
a: 210
s: 313
d: 227
f: 236
g: 252
h: 254
j: 258
k: 259
l: 262
ñ: 315
´ (a la derecha de la ñ): 214
ç: 220
Shift izq:258

No hay comentarios:

Publicar un comentario