Experiencias con GlovePIE

Nuevas Hawkers con un 20% de dto.
1, 2, 3, 4, 544
jape
MegaAdicto!!!
688 mensajes
desde nov 2006
en Terra Incógnita
Editado 1 vez. Última: 17/12/2006 - 18:57:09 por jape.
Sugiero este nuevo hilo, no para seguir explicando como conectar el Wiimote al PC (ya que para eso está ya el hilo oficial) sinó ya, con nuestros Wiimote conectados y GlovePIE funcionando, intercambiar scripts y explicar posibles maneras de enfocar de nuevo los juegos de toda la vida sean Windows o Emuladores.

Yo por ejemplo he jugado al Mario Kart 64 con el Wiimote con el siguiente script (elimino la configuración de los botones pues es a gusto del usuario):

PPJoy1.Analog0 = Wiimote.Pitch / 70
PPJoy1.Analog1 = (Wiimote.Roll + 90) / 90


Pero es que por otra parte, se me ocurrió poner el FLIGHT SIMULATOR 2004 y...
[flipa]
Solo tengo un comentario: "Perdonalos señor, a los pobres que no tienen el Wiimote, que no saben lo que hacen..."

El script es el siguiente, todo MUY simplón:

PPJoy.Analog0 = -Wiimote.gx
PPJoy.Analog1 = -Wiimote.gy


Lo único que hace es convertir el Wiimote, en posición vertical, en una palanca de mandos... que puedo levantar de la mesa y ponerla junto a la pantalla si me da la gana!! Inalámbrica, sin dificultades.....

¡Maravilloso!

Pequeño tutorial
(admite mejoras)

El lenguaje del GlovePIE es bastante interesante, es como si fuese un BASIC solo que hay un GOTO 0 al final del programa, es decir, el programa se repite en bucle eterno.

Recuerda a un lenguaje orientado a objetos. Entre objetos globales tenemos a "Wiimote" (que va a ser?? :) ) , "PPJoy" (un simulador de joystick, para datos "analógicos"), "Mouse", etc.
Keyboard es Superglobal, i.e. directamente puedo hacer "A = True" y la A del teclado se apretará continuamente.

Aquí pongo una pequeña descripción de los miembros de Wiimote:

Valores YA CALIBRADOS:

Wiimote.gx , gy, gz son valores normalizados del accelerómetro, es decir, 0 sería "no hay fuerza", 1 seria "fuerza de la gravedad" (es decir, en reposo).

Wiimote.Roll y Wiimote.Pitch son para el giro, vienen en angulos en grados. El propio GlovePIE los calcula para vuestra comodidad :)

Valores SIN CALIBRAR :

Wiimote.RawForceX, RawForceY, RawForceZ.... etc. No se para que nadie los podría querer usar :)

Otros

Wiimote.A, Wiimote.B, Wiimote.Plus, Wiimote.Minus, Wiimote.Home, Wiimote.One, Wiimote.Two son los botones (se ponen a True mientras estén apretados).

Wiimote.Up, Down, Left, Right es el D-Pad, idem que los anteriores.

Wiimote.Led1, Led2, Led3, Led4 son para controlar el estado de los leds, si los ponemos a True se enciende el LED, y a False se apaga.

Wiimote.Rumble es para el rumble, si lo pones a True pues vibra...

Wiimote.Battery da la batería. No he probado ni siquiera en qué unidades la da.

Sensor Bar

El objeto Wiimote puede captar hasta 4 puntos infrarrojos. Si apuntamos a la sensor bar veremos en general solo 2 puntos.

X = 1, 2, 3 o 4 dependiendo del punto del cual queramos obtener información.

Wiimote.dotXvis indica si el punto X está visible (si hay un punto X, vamos).

Wiimote.dotXsize indica el tamaño del punto X. Unidades desconocidas, aunque 1 quiere decir "muy pequeño" y yo he llegado a 4 que casi es "me ocupa toda la pantalla" :)

Wiimote.dotXx , dotXy indica la posición del punto X RESPECTO A LA CÁMARA DEL WIIMOTE. Es decir, la coordenada x puede estar entre [0, 1024] y la coordenada y puede estar entre [0,768]. Si queremos hacer un mouse típico pues habrá que invertir el eje X (el eje Y no hace falta pues Wiimote y Winbugs ya lo tienen invertido), además de normalizarlo al tamaño de la pantalla.

------------------------------------------

El boton de Power del Wiimote termina la conexión Bluetooth y lo pone en ahorro de pilas. Tambien vale apagar el PC para ponerlo en modo ahorro [toctoc]
FrEe_
Adicto
283 mensajes
desde ago 2006
en En las sombras...
Editado 1 vez. Última: 17/12/2006 - 03:42:05 por FrEe_.
E estado probando el GLovePIE esta tarde y el que mas me a gustado ( aparte del de controlar el winamp que venia con el programa xD) el de transformar el wiimote en un sable laser!!! O_O
Imagen
http://rapidshare.com/files/7462497/WiinSaber_v0.9.rar.html

y si os gusta mucho el zelda probar el de convertirlo en una espada xDD

http://www.freewebs.com/styson92/wiiSword.zip
CASTIGADOR
INDIGNADO
11.985 mensajes
desde feb 2002
en Madrid
Genial!!, los acabo de probar y se sale, ademas jugar al znes con el wiimote mola, aunque falta un boton, lastima que el power no lo reconozca :P
Radeon_7200
mein herz brennt
4.388 mensajes
y 9 fotos
desde feb 2005
en Madrí
Joder, no sabia que iva tan avanzado el tema, esta misma tarde(toi en el curro ¬¬) pruebo el flight simulator en el portatil de mi hermana(mi pc no puede con el FS jeje)
rintin
FlanGames
3.569 mensajes
desde jun 2003
en BCN
Editado 1 vez. Última: 17/12/2006 - 13:07:07 por rintin.
Que alguien haga pruebas con los House of the Dead (2y3) de PC please. K como rulen bien me los adjudico [plas]
CASTIGADOR
INDIGNADO
11.985 mensajes
desde feb 2002
en Madrid
rintin escribió:Que alguien haga pruebas con los House of the Death (2y3) de PC please. K como rulen bien me los adjudico [plas]


Ostras, juegos de pistola :D, a ver si encuentro el house of dead
Kutaragi
DevastadorDialéctico
5.141 mensajes
desde ago 2006
en Madrid
Pero haber vosotros os poneis el GLOVE PIE, y luego como haceis que funcione el Wiimote con el Flight simulator por ejemplo??
Homertron3
MegaAdicto!!!
852 mensajes
desde dic 2006
simplemente es coger el repertorio de instrucciones del glovepie y ponerse a programar estilo java o similares, pero muuuuuuy simplificado, tanto q se puede hacer un "parche" para cada juego en pocos minutos.

Y mas facil aun, te pillas los valores del test y ahi los tienes:

// Set keys to wiimote buttons
Up = Wiimote.Up
Down = Wiimote.Down
Left = Wiimote.Left
Right = Wiimote.Right
A = Wiimote.A
B = Wiimote.B
One = Wiimote.One
Two = Wiimote.Two
Home = Wiimote.Home
Minus = Wiimote.Minus
Equals = Wiimote.Plus

// Rumble when shift is pressed
Wiimote.Rumble = Shift

// Set the middle two LEDs to ON
Wiimote.Led1 = false
Wiimote.Led2 = true
Wiimote.Led3 = true
Wiimote.Led4 = false


No está todo, es pa q t hagas una idea, sabiendo q tecla usa tal juego se la asignas al botón q quieras del Wiimote y poco más, realmente sencillo, yo ya tengo bastantes "parches"

Y otra cosa, supongo q no seré el primero q ha tenido la ocurrencia, pero si queréis jugar usando los infrarrojos pa mover el cursor o el puntero, etc... tonces una solución rápida es poner la consola al lado con la barra sensora bajo el monitor (q de sensora no tiene ná pro weno XD)
RODLON
Adicto
374 mensajes
desde may 2006
en Estadilla
¿y no hace falta que haya algo en el ordenador para recibir los datos del cacharro infrarrojo del mando?
Taiyou
MegaAdicto!!!
3.667 mensajes
desde ene 2004
en Cádiz
Editado 1 vez. Última: 17/12/2006 - 15:30:26 por Taiyou.
Aquí mi primitivo script para manejar el F-Zero X de la Nintendo 64 (usando un emulador) a lo Excite Truck :D. Salvo en los túneles que a veces te pierdes, el juego gana muchísimo así (éso sí, si ya es difícil con mando...). Una manera nueva de jugar este juego con el que tantas horas he pasado :D.

// Esquema básico de control para F-Zero X de Nintendo 64
// Inclina el mando a los lados como volante para manejar la nave,
// y hazlo hacia alante o hacia atrás para manejar la inclinación
// en los saltos, a lo Excite Truck
// Botón 1 para acelerar, botón A para el turbo.
// Para usar el "alerón" o dar bandazos a los lados para tirar a los
// oponentes, pulsa el botón 2 girando hacia el lado que sea.

var.xOffset = 0
var.yOffset = 0
var.zOffset = 0.13

var.giroZ=Wiimote.gz+var.zOffset
var.giroY=-(Wiimote.gy+var.yOffset)

// Debug
debug = “X=”+Wiimote.gx+” Y=”+var.giroY+” Z=”+var.giroZ

//Asignación a PPJoy

PPJoy.Analog0 = var.giroZ
PPJoy.Analog1 = var.giroY

PPJoy.Digital0=Wiimote.One
PPJoy.Digital1=Wiimote.A
PPJoy.Digital2=Wiimote.Two
PPJoy.Digital4=Wiimote.Home


Añadidle más botones que yo de momento con el acelerar y el "turbo" me he conformado. Tendré que buscarle una manera de usar los alerones (he pensado asignar el "L" al botón arriba del stick, el "R" al botón "2", y el turbo al "A"), a ver si me pongo esta tarde a probar.

Taiyou

EDIT: repasada cambiando ciertos botones. En general funciona cojonudo :D.
1, 2, 3, 4, 544