Tincore Keymapper

Tincore Keymapper

Contenido

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 [url=https://play.google.com/store/apps/details?id=com.tincore.and.keymapper&feature=search_result#?t=W251bGwsMSwyLDEsImNvbS50aW5jb3JlLmFuZC5rZXltYXBwZXIiXQ..]market de google[/url], 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)

Archivo:Http://1.bp.blogspot.com/GiRoPVeEudJHzaVF5nvh9SsoDj7cHt961feUCcliZiSyziXuJyFDMisixQ7FNs5v1Ec

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)

Archivo:Http://3.bp.blogspot.com/-uAxb9eIb6so/UZoRylPUrZI/AAAAAAAAGvI/Z6l-CUfiZSY/s320/2013.05.20-13.50.17.jpeg

[*]Abrimos el juego y buscamos una pantalla donde podamos ver la configuración de controles táctiles (Opciones-Configurar HUD)

Archivo:Http://3.bp.blogspot.com/-3Qcehfyo8Cs/UZoRzLNbw6I/AAAAAAAAGvQ/ddhUYPf1SZM/s320/2013.05.20-13.50.35.jpeg

[*]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.

Archivo:Http://3.bp.blogspot.com/-xR 45MzBEiY/UZoR22EWsvI/AAAAAAAAGvo/UM8fjO5ZVLw/s320/2013.05.20-13.52.04.jpeg

[*]Abrimos la herramienta Tincore Keymapper, y configuramos rápidamente los controles que identifiquemos en pantalla.

Archivo:Http://3.bp.blogspot.com/-xR 45MzBEiY/UZoR22EWsvI/AAAAAAAAGvo/UM8fjO5ZVLw/s320/2013.05.20-13.52.04.jpeg

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)

Archivo:Http://2.bp.blogspot.com/-MvMBzSNiWBI/UZoR7LChykI/AAAAAAAAGwI/IJRyt9aQCaQ/s320/2013.05.20-13.53.34.jpeg

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.

Archivo:Http://3.bp.blogspot.com/-71byxHcwZaw/UZoR9-a8ioI/AAAAAAAAGwY/0zdC5Etp6wU/s320/2013.05.20-14.08.26.jpeg

Como se puede ver en la imagen anterior, el botón A ha sido reconocido y configurado en ambas herramientas.

Archivo:Http://2.bp.blogspot.com/-7v6PICKKTL4/UZoR QTBAI/AAAAAAAAGwg/hL4UrK2wF8E/s320/2013.05.20-14.08.44.jpeg

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

[center][url=http://3.bp.blogspot.com/Rbkw6cfTYsGaOHO6PdnyCsemY9QrKDQh1r2SXewVK_VTMcjn3Xl_OI1rGXg9j-DPcg][img]http://3.bp.blogspot.com/Rbkw6cfTYsGaOHO6PdnyCsemY9QrKDQh1r2SXewVK_VTMcjn3Xl_OI1rGXg9j-DPcg[/img][/url][/center]

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.

Generalidades

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:

[url=https://play.google.com/store/apps/details?id=com.tincore.and.keymapper&feature=search_result#?t=W251bGwsMSwyLDEsImNvbS50aW5jb3JlLmFuZC5rZXltYXBwZXIiXQ..]Tincore Keymapper[/url] (google play)

Para sugerencias, bugs o cualquier comentario, sugiero postear directamente en el [url=https://plus.google.com/104070628452082829435]foro de la herramienta[/url].