› Foros › Multiplataforma › Consolas alternativas
Introducción
Como algunos sabéis, llevo algún tiempo participando (con pruebas, sugerencias, ideas, etc) en el proyecto del keymapper de Tincore, y que originalmente salió para la consola JXDS7300B.
Tincore no se ha quedado quieto, y ha seguido trabajando en el proyecto para poder ofrecer su herramienta de mapeo en otros dispositivos y que no esté limitado sólo a la consola de JXD, y es que han sido muchos los usuarios que, tanto por que usan otros firmwares o dispositivos, han preguntado por la posibilidad de poder ejecutar esta herramienta y disfrutar de las vengajas que conlleva.
Escribo este pequeño artículo para dar a conocer esta herramienta, y sobre todo, su disponibilidad en el market de google, y la posibilidad de instalarla en otros dispositivos.
Espero tener algo de tiempo para comentar mas extensamente sobre la herramienta, y si hay ocasión, generar algún tipo de manual en línea (o ayudar a crearlo).
Vale la pena señalar que esta herramienta ha sido desarrollada y probada por usuarios "jugones" (gamers), por lo tanto tiene bastante control y directrices que están orientada al uso de juego, y no es un producto "genérico" desarrollado sin tener en consideración las preferencias de los usuarios mas "gamers", por tanto resulta mucho mas interesante desde este punto de vista, puesto que ofrece una herramienta que efectivamente ofrece una alternativa real de soporte para juegos que no disponen de soporte nativo para controles, y que se ha buscado una manera efectiva de disfrutar de ellos con controles físicos.
¿Para que sirve esta herramienta?
Lo primero que debo aclarar es el objetivo que tiene esta herramienta, sobre todo para aquellas personas que no están familiarizadas ni con la consola JXD, ni con productos similares.
En android tenemos muchas formas de interactuar con programas y juegos. Desde aquellos que tienen soporte nativo para joysticks, esto es, le conectas un mando por el puerto usb o por bluetooth, y utilizas directamente el mando en juegos, y existen otras aplicaciones que tienen una interfaz completamente táctil, y que en estos casos no se puede utilizar un mando (por que no hay soporte, y por lo tanto el mando no tiene ningún efecto en la aplicación o juego)
Bueno, para estos casos existen las herramientas llamadas Keymappers (o bueno, pueden tener mas nombres, pero es el que utilizaré para que nos entendamos), y lo que hacen es básicamente asignar un botón o control físico (de un mando, por ejemplo), y establecer un punto en pantalla donde simular que estamos presionando.
En principio, esto es bastante simple de entender, pero en la práctica las alternativas existentes no llegan a solucionar completamente o de manera sencilla este "mapeo" de controles con la pantalla, siendo necesario en varias ocasiones realizar bastantes configuraciones en los keymappers existentes para lograr obtener el resultado deseado.
Bueno, con esto en mente, Tincore ha desarrollado una herramienta que en principio fuese sencilla de utilizar y, sobre todo, genere una solución standard para ejecutar en distintos dispositivos y obtener un resultado similar en todos ellos.
¿Como se utiliza la herramienta?
El concepto es bastante sencillo de cara al usuario. Al ejecutar la apliación se abrirá un editor, en donde vamos a asignar controles físicos a zonas de pantalla.
Lo interesante de la herramienta es que es capaz de detectar los controles que tenemos disponibles, a medida que los vamos presionando, por lo que no es necesario realizar complicadas configuraciones en el programa para que sepa con que controles disponemos.
Para ser prácticos, podemos poner un ejemplo. Supongamos que tenemos una tablet android, con puerto USB OTG, y con soporte para joystick.
- Con la aplicación sin arrancar, insetamos un joystick en el puerto USB OTG y a continuación abrimos el Tincore Keymapper
- Luego abrimos un juego, por ejemplo, Samurai II: Revenge
- Con el juego en pantalla, abrimos el editor del Tincore Keymapper. Para esto vamos a la zona de notificación de Android y seleccionamos el Keymapper de la lista.
- Se abrirá el editor del Keymapper. Se mostrará un panel con algunas configuraciones especiales, pero no vamos a hacer caso de el por ahora.
- Tocamos en alguna parte de la pantalla, y con esto haremos que desaparezca el panel
- Ahora tenemos la interfaz limpia. Vamos a asignar los botones del juego a botones físicos del mando.
- Presionamos algún botón del mando. Veremos que aparece un botón en pantalla que se corresponderá con el boton que hemos presionado.
- Movemos el botón (con el dedo) y lo posicionamos donde queremos que genere el toque en pantalla, para que presione los botones del juego.
- Luego, presionamos el stick del mando.
- Veremos que aparece un Stick en pantalla. Lo movemos y lo posicionamos sobre el stick del juego
- Tocamos en alguna parte de la pantalla para hacer aparecer el panel de configuración. En la parte superior veremos que hay un "check" y le damos. El programa nos preguntará por el nombre del perfil y, por defecto, nos pondrá el nombre del juego (de la tarea Android). Dar a aceptar sin cambiar el nombre.
- El editor se cerrará y estaremos en el Juego. Ahora si movemos el stick veremos que el stick virtual (el del juego) también se mueve.
- Asimismo, si presionamos los botones, veremos que el juego responde como si hubiésemos presionado los botones virtuales (los del juego)
Ya tenemos funcionando nuestro juego, usando un joystick!
Es así de sencillo. Existen mas opciones por cada control, pero eso ya es cuestión de empezar a investigar.
Como se puede ver, el proceso es MUY SENCILLO y no requiere de conocimientos extra ni del hardware de la tablet, ni del mando, ni nada en especial.
Otro ejemplo: Modern Combat 4
Por poner otro caso práctico mas complejo, voy a mostrar como se haría para mapear el juego Modern Combat 4 (utilizando la consola Archos Gamepad)
- Abrimos el juego y buscamos una pantalla donde podamos ver la configuración de controles táctiles (Opciones-Configurar HUD)
- Si vemos que la imagen del juego es muy oscura, podemos utilizar el fondo alternativo de la herramienta, que nos permitirá ver mas claramente la disposición de los controles del juego.
- Abrimos la herramienta Tincore Keymapper, y configuramos rápidamente los controles que identifiquemos en pantalla.
Para el stick derecho, seleccionamos el tipo "Touch Pointer Circular" y configuramos las esquinas (aparecen marcadas en blanco en la imagen) de forma que queden en un espacio que utilizaremos para mover la vista en primera persona (cámara)
A continuación, definimos un boton (en este caso, Start) para que sea de tipo Touch Swipe, y lo utilizaremos para cambiar de arma en el juego.
Y ya tenemos definida nuestra interfaz táctil, en la consola Archos Gamepad y utilizando la herramienta Tincore Keymapper.
Damos al botón para aplicar y guardar nuestra configuración, y ya podemos disfrutar del juego.
Herramienta original de mapeo de Archos Gamepad
He realizado un pequeño experimento y he asignado el botón "A" con la herramienta de Archos, y también tengo asignado el mismo botón con la herramienta de Tincore.
Como se puede ver en la imagen anterior, el botón A ha sido reconocido y configurado en ambas herramientas.
En la ejecución, es la herramienta de Tincore la que prevalece, realizando el touch en pantalla (corresponde al círcuo blanco que hay en la pantalla anterior).
Por tanto, y después de hacer otras pruebas, puedo decir que efectivamente la herramienta de Archos queda deshabilitada mientras la herramienta de Tincore se encuentre en funcionamiento.
Muy bien, he seguido los pasos pero no funciona correctamente.
Bien, la herramienta es nueva, y requiere de feedback de parte de los usuarios. Se ha probado en distintos dispositivos, pero no en todos, por lo que aquí el desarrollador necesita del feedback de los usuarios para ir ajustando parámetros y dar soporte a otros dispositivos.
En todo caso, existen algunas opciones "simples" integradas en el panel de configuración que pueden ayudar a dar soporte a la herramienta. Estos ajustes son básicamente los siguientes.
Para sticks:
Invertir X: Si al mover el stick ves que responde de forma invertida (hacia la derecha va a la izquierda), marcar esta opción para ver si se soluciona.
Inverir Y: Si al mover el stick ves que responde de forma invertida (hacia arriba va abajo), marcar esta opción para ver si se soluciona.
Intercambiar X/Y: Si al mover el stick vemos que el eje X, en realidad mueve hacia arriba y abajo, y el eje Y mueve hacia los lados, marcar esta casilla para ver si se soluciona.
Para pantalla
Invertir X: Si al cerrar el editor, los toques se muestran desplazados desde el borde derecho, marcar esta opción para ver si se soluciona.
Invertir Y: Si al cerrar el editor, los toques se muestran desplazados desde el borde inferior, marcar esta opción para ver si se soluciona.
Intercambiar X/Y: Si al cerrar el editor vemos que los toques se muestran en la posición opuesta de pantalla, marcar esta opción para ver si se soluciona.
Modo alternativo de touchscreen: Si al cerrar el editor vemos que no hay toques generados por la aplicación donde deberian generarse, marcar esta opción para ver si se soluciona.
Asimismo, y para ayudar al soporte de nuevos dispositivos, existe un modo debug que proporciona información de los distintos controles que la aplicación logra reconocer, y sus estados.
Otros dispositivos
En principio se intentará dar soporte para otros dispositivos que no son comunes este tipo de uso, como pueden ser los Android-TV, estas cajitas Android que conectamos a la tele, y que si bien es cierto tienen bastante potencia para poder ejecutar juegos punteros de Android, lo cierto es que la falta de interfaz táctil limita mucho su uso, y las herramientas existentes para mapear controles son, como he dicho anteriormente, poco prácticas o complicadas de configurar.
De momento existe un soporte muy básico para este tipo de dispositios y es experimental, pero eventualmente tendremos una versión funcional de la herramienta que será tan sencilla como su uso en tablets, esto es, conectar mando, pulsar boton y con la ayuda de un ratón o similar mover estos botones en pantalla para configurar nuestro "panel táctil". Con esto, juegos como Nova3, Modern Combat 4 o similares serán mas simples de implementar su interfaz con el mando y, por ende, disfrutar de estos títulos de forma mas "Natural".
He probado otras alternativas existentes para poder jugar en Android TV, juegos que no tienen soporte para joystick, y de las alternativas que he probado todas tienen algún problema, o no responden adecuadamente, o requieren de otro tipo de implementación (una tablet o móvil con características especiales), o simplemente no son prácticas (requieren de configurar perfiles utilizando un PC de por medio), etc.
De cara a la simplificación y estandarización, esta nueva herramienta aporta un aire fresco como alternativa, además de que dará un nuevo giro al uso que se pueden hacer en este tipo de dispositivos que no tienen una interfaz táctil y, por lo tanto, están mas limitadas en cuanto al tipo de aplicaciones que se pueden utilizar en ellos.
Otras características
Tincore Keymapper tiene soporte para mas de un dispositivo simultáneo, esto significa que podemos conectar 2 (o mas) joysticks al mismo tiempo, y mapear en pantalla sus botones
De momento, no existen muchos juegos o aplicaciones que tengan soporte para mas de un jugador y que tenga los controles en pantalla (ePSXe es un ejemplo, que parte la pantalla para jugad 2 players en el mismo dispositivo, y con los controles en pantalla), pero desde ya es bueno saber que se puede contar con una herramienta que distinga entre distintos dispositivos y los maneje de forma separada.
También podemos configurar un teclado y mapear teclas a pantalla, o incluso podemos mapear dispositivos combinados, con los que el abanico de personalizaciones que podemos hacer es muy amplio y variado.
Diferencias entre utilizar el Driver Tincore o utilizar el modo Event
Originalmente, esta aplicación estaba diseñada para trabajar con la consola JXDS7300B, y para tal uso se generó un driver específico para los controles del dispositivo.
La herramienta actual puede ejecutarse en dispositivos que no tienen un driver especifico generado (esto es una de sus mayores virtudes), pero evidentemente que existe algún tipo de diferenciación entre ambas versiones.
Al ejecutar la herramienta con soporte nativo de un driver (Tincore Driver), el input lag que se obtiene es mínimo, casi inexistente, y por lo tanto para usuarios mas exigentes deberia ser la opción óptima de uso de una consola Android.
Por otro lado, el uso del modo Event, que es el modo de operación si no existe un driver específico, por su implementación y características tiene mas input lag que el modo Driver, pero este input lag solo lo notarán los jugadores mas exigentes o sibaritas, pero es un input lag mínimo de cualquier formas, y en muchos casos cuesta diferenciar si existe o no.
Palabras finales
La herramienta es un muy buen punto de partida para dar soporte a dispositivos que no cuentan con este tipo de herramientas para poder disfrutar de juegos android de manera completa o, por lo menos, mas satisfactoria que las alternativas existentes hoy en día.
Hay muchas características nuevas propuestas, pero se les irá dando prioridad a las mas importantes o urgentes, como es lógico.
Animo a todos a que descarguen la herramienta y la prueben y comenten su experiencia, aquí o en el mismo google play.
La dirección para descargar la herramienta es esta:
Tincore Keymapper (google play)
Para sugerencias, bugs o cualquier comentario, sugiero postear directamente en el foro de la herramienta.
OniTako escribió:Esto podría funcionar para ponerle controles físicos por Bluethoot como los del ipega pg-9027 a Carmaggedon, no?
Voy a probarlo
Edit:
Pues no consigo que me detecte el dispositivo el Tincore este
Si alguien lo consigue que avise.
Deen0X escribió:ahora mismo se está probando una nueva versión con soporte para android 2.x (xperia play)
si te interesa ser beta tester, mándame a mi o a Tincore tu correo.
Zalu2!
guillian-seed escribió:¿Es necesario hacer root? Yo tengo el iPega, así que supongo que nada de nada, no?
Tomax_Payne escribió:Lo he instalado en un mk802, y por ahora va bien.
Habeis probado a mapear el boton menu, o el back?
Se puede?
Deen0X escribió:pregunta (curiosidad): por que no rooteas?
Tomax_Payne escribió:Buenisimo!!!
Perfecto para L3 y R3, ademas del boton playstation, con lo que puedo mapear 3 botones para emus.
Lo del teclado, es una pena, ya que me toca comprar un mando.
Muchas graciad y ya mostrare el resultado final.
Un saludo
MegaMacho escribió:Hola yo tambien tengo el ipega, he visto que ha salido nueva actualizacion con soporte bluetooth pero al menos yo soy incapad de hacer funcionar el stick derecho del mando ipega en ningun dispositivo. Solo consigo que me lo reconozca bien en modo teclado y en modo raton.
Este mando tiene 4 modos. modo teclado, modo raton, modo joystick( se supone q hace funcionar ambos stick) y modo icade solo para ios.
MegaMacho escribió:Hola yo tambien tengo el ipega, he visto que ha salido nueva actualizacion con soporte bluetooth pero al menos yo soy incapad de hacer funcionar el stick derecho del mando ipega en ningun dispositivo. Solo consigo que me lo reconozca bien en modo teclado y en modo raton.
Este mando tiene 4 modos. modo teclado, modo raton, modo joystick( se supone q hace funcionar ambos stick) y modo icade solo para ios.
thafestco escribió:Yo en OUYA lo que hago (a parte de hacerme un perfil para que el mando funcione como deberia funcionar en los menús) es asignar siempre un botón a Function -> Mapper, así accedo directamente y más fácil.
thafestco escribió:Por la noche te lo veo y a ver si me puedo currar un pequeño tutorial específico para ouya
tincore escribió:2.8.4
Estabilization of network remote modes.
Estabilization of touch as input.
New mode absolute touch.
New modes virtual pointer (hybrido mouse/touch). Very useful in NFS for non touch devices.
Xperia play touchpad support (ask for instructions in the forum if you dont know how to do it)
Other fixes and optimizations.
2.6.4
Analog stick calibration
2.6.0
Many bugs corrected.
Experimental remote and touch as input modes and a lot of other things here and there.
fenano escribió:tincore escribió:2.8.4
Estabilization of network remote modes.
Estabilization of touch as input.
New mode absolute touch.
New modes virtual pointer (hybrido mouse/touch). Very useful in NFS for non touch devices.
Xperia play touchpad support (ask for instructions in the forum if you dont know how to do it)
Other fixes and optimizations.
2.6.4
Analog stick calibration
2.6.0
Many bugs corrected.
Experimental remote and touch as input modes and a lot of other things here and there.
Buena actualización!!! gracias
¿Tienes pensado permitir controlar el acelerómetro con un joystick? Algunos juegos (de carreras por ejemplo) usan la inclinación del teléfono a modo de volante, sería genial poder configurar ese movimiento en el analógico.
tincore escribió:
Lo he pensado. Creo que para hacer eso hace falta que modifique un firmware asi que no lo veo muy universal. Puede que llegado el momento haga una prueba de concepto con un dispositivo a ver si estoy en lo cierto.
emulation escribió:aun no lo he probado pero espero funcione bien en los juegos de la consola ouya aunque por alli he leido que va bastante bien aunque en algunos juegos como el real racing 3 no funciona.
ya le ha ido añadiendo cosas específicas de Ouya al programa y solo a base de las pruebas que iba haciendo yo en casa, lo que me parece un currazo increible, ya que no es lo mismo que tenga una consola para probar y así tener mejor idea a que yo vaya probando cosas y el tenga que descubrir por qué falla algo o por qué nofenano escribió:tincore escribió:
Lo he pensado. Creo que para hacer eso hace falta que modifique un firmware asi que no lo veo muy universal. Puede que llegado el momento haga una prueba de concepto con un dispositivo a ver si estoy en lo cierto.
Si te animas a modificarlo para la Ouya yo lo pruebo sin ningun problema
Deen0X escribió:Lo que es un error es que OUYA no tenga play store de google' y que los usuarios tengan que buscarse la vida para instalarlo, instalando un framework parcheado para que funcione en la consola.
es todo esto lo que determina si una aplicación se carga o no en el store... y claro, ya son cosas que se escapan al desarrrollador.
Así que, no digamos quees un problema se tincore sino más bien de OUYA y su sistema yan cerrado.
Zalu2!
xtroder escribió:Deen0X escribió:Lo que es un error es que OUYA no tenga play store de google' y que los usuarios tengan que buscarse la vida para instalarlo, instalando un framework parcheado para que funcione en la consola.
es todo esto lo que determina si una aplicación se carga o no en el store... y claro, ya son cosas que se escapan al desarrrollador.
Así que, no digamos quees un problema se tincore sino más bien de OUYA y su sistema yan cerrado.
Zalu2!
A parte del problema de Ouya, en el SDK de Android puedes limitar a los dispositivos por versión de Android y demás, y viendo que juegos como los GTA si están disposnibles sin estar pensados para Ouya, que un programa muy util en Ouya no lo esté...
fenano escribió:emulation escribió:aun no lo he probado pero espero funcione bien en los juegos de la consola ouya aunque por alli he leido que va bastante bien aunque en algunos juegos como el real racing 3 no funciona.
El rr3 funciona sin problemas con tincore.