Hola chicos, llevaba un tiempo intentando automatizar la conexión del wiimote para la recreativa sin tener que usar el teclado ni el ratón y aqui os dejo como podemos hacerlo.
Necesitaremos los programas:
Bluetooth Stack Toshiba WiinRemote AutoHotkey
Una vez conseguidos procedemos a la instalación.
1º Instalación del programa Bluetooth Stack Toshiba (yo he usado la versión v700016T)
Una vez instalado nos pide reiniciar el PC.
2º Creación de la conexión del wiimote.
Ejecutamos el programa y pinchamos en "Nueva conexión".
Luego aparecerá el asistente de configuración,seleccionamos "Modo express" y Encendemos el wiimote (presionando 1 y 2) y pulsamos en siguiente.
Cuando establezca la conexión con el Wiimote aparecerá un icono con un teclado y un ratón, seleccionamos el dispositivo y pulsamos en siguiente.
Volvemos a encender el Wiimote (presionando 1 y 2) y vamos pulsando siguiente y finalizar hasta que aparezca la conexión del Wiimote con el PC.
Pinchamos sobre el dispositivo y elegimos botón derecho y crear acceso directo en el escritorio.
Ahora ya tenemos configurada la conexión del wiimote.
3º Automatizar la conexión con autohotkey (yo he usado el AutoHotkey104805 portable+compiler)
El scrip seria lo que esta en rojo y en negrita (lo que esta en negrita hay que verificarlo con los datos y rutas de nuestro PC)
RunWait, taskkill.exe /f /im WiinRemote.exe,,Hide
Run,"C:\Archivos de programa\Toshiba\Bluetooth Toshiba Stack\ECCenter.exe" 1001(lo que esta en negrita es el contenido del acceso directo creado en el escritorio en el paso anterior)
Run,"C:\Documents and Settings\Administrador\Escritorio\WiinRemote_v2007.1.13\WiinRemote.exe"(lo que esta en negrita es la ruta donde se encuentra el programa wiinremote)
WinWaitActive, WiinRemote, , 1
WinHide
La primera línea lo que hace es matar el proceso wiinremote.exe, esto es para evitar tener varios wiinremote.exe por si lanzamos varias veces el scrip.
Una vez creado el scrip creamos el archivo .exe con la opción compiler del autohotkey (en este caso yo le he llamado pistolas.exe)
4º Configuración del programa Wiinremote
Esta configuración es diferente en cuanto a la asignación de los botones A y B y también la opción Minimize at Startup con respecto al tutorial de Akiles y Berck (Retrovicio).
Ejecutamos el programa Wiinremote y vamos al menú options y elegimos preferences
En esta ventana en el apartado General marcaremos: IR Sensor Draw Graph Rumble on Edge
* La opción Enable Cursor at Startup podemos marcarla y el cursor se moverá desde que se establezca la conexión, yo prefiero activarlo manualmente con el botón Home.
** MUY IMPORTANTE ** La opción Minimize at Startup NO hay que marcarla si usamos en nuestra recreativa el loader marciano y hemos eliminado el escritorio de windows ya que nos dará un error al no poder minimizarlo.
En el apartado Button Assign:
Asignamos al botón A el Mouse Middle-Click
Asignamos al botón B el Mouse Left-Click
Asignamos al boton Home Cursor On/Off $ Speed
Este botón Home nos permitirá activar y desactivar el cursor del wiimote
También se puede configurar directamente con el siguiente archivo INI:
Con esta configuración funcionan como disparo el botón B (gatillo) y el A como segunda arma (bomba) en el caso del juego Operation Wolf y no es necesario entrar en las opciones del juego a configurar nada.
5º Configurando nuestra versión de Mame.
Para poder utilizar el Wiimote como pistola es necesario configurar nuestro mame, para ello vamos al menú Options y elegimos Default Game Options.
Se nos abrirá una nueva ventana donde tendremos varias pestañas.
En la pestaña Controller deberemos marcar las casillas: Enable Joystick input Enable Lightgun input Offscreen shots reload (esta opción se utiliza para recargar la pistola disparando fuera de la pantalla).
En alguna versión de mame puede que se tengan que activar estas opciones directamente en el archivo mame.ini.
En la pestaña Controller Mapping deberemos elegir en el apartado Lightgun device la opción Lightgun.
Aceptamos y ya esta configurado nuestro Mame. Importante: Parece ser que a partir de la version 117 de mame no hay forma de que funcione ya que el mame paso a usar el raw input en lugar del direct input para la lectura de los mandos. Tambien he comprobado que en versiones anteriores a la 128 no funciona la opcion Offscreen shots reload (que se utiliza para recargar la pistola disparando fuera de la pantalla). Solución: La solución es usar una versión de mame como minimo la 128 y que este compilada con la opción direct imput con el valor 1.
6º Integración del lanzador del scrip en Mamewah.
Mi idea era la de integrar el scrip dentro de Mamewah como si fuera una ROM mas y poder lanzarlo solo cuando lo necesitara, para ello lo que he hecho es crear una ROM falsa llamada “-Configuración Pistolas-.zip” dentro de la carpeta donde están las roms.
Ahora solo necesitamos que esa ROM aparezca en la lista de Mamewah
Accedemos a la carpeta de Mamewah, dentro de esta carpeta tenemos varias carpetas más, entre ellas la carpeta files.
Dentro de la carpeta files tenemos varios archivos con la extensión .lst (uno por cada emulador que tengamos instalado en Mamewah).
Elegimos el archivo .lst que corresponda al emulador donde queremos que figure la ROM falsa (en mi caso Mame-0.lst) y lo editamos añadiendo al principio del mismo 13 líneas con los siguientes datos:
En la primera línea el nombre de la ROM sin la extensión En la segunda línea el nombre que queramos que figure en la lista de mamewah (puede ser distinto)
Quedando después 11 líneas en blanco.
Si lo hemos hecho bien al entrar en Mamewah ya aparecerá la ROM en la lista.
Importante, si dentro de las opciones de Mamewah damos a generar lista la ROM falsa desaparecerá y tendremos que volver a hacer el paso anterior.
El ultimo paso es crear un archivo INI con el nombre de la ROM falsa para que Mamewah lance el programa pistolas.exe, en nuestro caso “-Configuración Pistolas-.ini”
Dentro de la carpeta Mamewah entramos en la carpeta config, dentro de la carpeta config tendremos varias carpetas una por cada emulador.
Accedemos a la carpeta con el nombre del emulador donde hemos puesto la ROM falsa (en nuestro caso Mame) dentro de la carpeta hay otra carpeta llamada game y aquí es donde pondremos el archivo “-Configuración Pistolas-.ini” que lanzara el programa pistolas.exe
### Execution Settings ### pre_emulator_app_commandlines emulator_commandlineC:\Documents and Settings\Administrador\Escritorio\pistolas.exe(aqui esta la ruta de nuestro scrip) post_emulator_app_commandlines
Y con esto ya esta todo listo para jugar!!!!
Como ejemplo aquí esta el video de la primera prueba.
Joder! Al final has conseguido dejar el proceso de conexión muy elegante. En cuanto pueda lo probaré (no en una maca pero por lo menos sí en la TV del salón). Deseando echar unos Operation Wolf o Terminator 2 sin tanto trajín de ejecuta esto, pulsa sync, abre wiinremote,.... Mucho más fácil: conecta el wiimote y lanza el juego . Enhorabuena!!!
Joder! Al final has conseguido dejar el proceso de conexión muy elegante. En cuanto pueda lo probaré (no en una maca pero por lo menos sí en la TV del salón). Deseando echar unos Operation Wolf o Terminator 2 sin tanto trajín de ejecuta esto, pulsa sync, abre wiinremote,.... Mucho más fácil: conecta el wiimote y lanza el juego . Enhorabuena!!!
Un saludo.
Hola El_Eka, ya ves al final esta terminado. Ahora ya puedes disfrutarlo
Pruebalo y si tienes algun problema o duda intentaremos solucionarlo.
Actualizado el primer hilo con información importante.
Importante: Parece ser que a partir de la version 117 de mame no hay forma de que funcione ya que el mame paso a usar el raw input en lugar del direct input para la lectura de los mandos. Tambien he comprobado que en versiones anteriores a la 128 no funciona la opcion Offscreen shots reload (que se utiliza para recargar la pistola disparando fuera de la pantalla). Solución: La solución es usar una versión de mame como minimo la 128 y que este compilada con la opción direct imput con el valor 1.
Claro, puedes usar cualquier version de mame por encima de la 128 compilada con el direct input.
Tambien se puede con las anteriores solo que por lo que he comprobado no funciona la opcion Offscreen shots reload (que se utiliza para recargar la pistola disparando fuera de la pantalla).
Para usar el WiiMote de apuntador (lightgun) es necesaria la barra sensora. Me explicaron que incluso funciona con dos velas colocadas en las esquinas de la pantalla XD
Fuera coñas de Güija, vendes sensores en ebay que funcionan hasta con pilas, independientes de la máquina.
A mí me sonaba raro que no necesitara una pero vamos, jeje! Bueno habrá que buscar algún tuto de como cortar el cable y conectarle un USB o el conexionado a pilas como comentas porque eso no venía en tu tutorial.