Tabla de contenido:

Controlador de juegos familiar inalámbrico para 4 jugadores: 3 pasos
Controlador de juegos familiar inalámbrico para 4 jugadores: 3 pasos

Video: Controlador de juegos familiar inalámbrico para 4 jugadores: 3 pasos

Video: Controlador de juegos familiar inalámbrico para 4 jugadores: 3 pasos
Video: Sabias que se podía hacer esto con el mando de PS3 2024, Noviembre
Anonim
Controlador de juegos familiar inalámbrico para 4 jugadores
Controlador de juegos familiar inalámbrico para 4 jugadores
Controlador de juegos familiar inalámbrico para 4 jugadores
Controlador de juegos familiar inalámbrico para 4 jugadores
Controlador de juegos familiar inalámbrico para 4 jugadores
Controlador de juegos familiar inalámbrico para 4 jugadores

Este es un controlador de estilo arcade inalámbrico en el que 4 personas pueden jugar a la vez. Es inalámbrico para que no tenga que conectar su PC a un controlador que utilizan niños de 5 años. Se caen todo el tiempo y no quiero que destruyan todos mis juguetes cuando inevitablemente se tropiecen con un cable. Recientemente compramos un nuevo monitor de computadora y venía en una caja súper resistente con espuma de poliestireno realmente densa en su interior. Como algo sacado de una comedia de situación, discutía continuamente con mi esposa acerca de conservar la caja. A mí me parecía suplicar que lo convirtiera en algo, mientras que a ella le parecía una basura fea. Luego, de la nada, Instructables organizó un concurso de velocidad basado en cartón. Y así en una tarde se zanjó la discusión y nació este proyecto.

Usamos extremos de probabilidades que teníamos en la casa para darle vida al proyecto. La idea era usar lo que ya teníamos para hacer algo genial; afortunadamente, teníamos un conjunto de botones de arcade y una frambuesa pi que compramos hace mucho tiempo para hacer un gabinete de arcade. Para cortar usamos una sierra y mi vieja navaja de confianza.

Suministros

1. Caja de cartón2. Espuma de poliestireno u otro relleno denso 3. Botones de arcade de Ali Express o Amazon 4. Raspberry Pi 3B + 5. Alguna otra computadora + pantalla. 6. Cuchillo o algo para hacer agujeros en el cartón 7. Cinta adhesiva8. Pintura en aerosol

Paso 1: la construcción

La construcción
La construcción
La construcción
La construcción
La construcción
La construcción

Rápidamente hicimos un boceto de cómo queríamos que se viera la cosa, luego usamos un cuchillo y una sierra para madera para cortar el cartón y la espuma de poliestireno al tamaño correcto. Marcamos el cartón con un buen diseño de botón / joystick y cortamos los agujeros con cuidado con un cuchillo. Este fue un gran ejercicio de matemáticas básicas para los niños. Una vez que cortamos el cartón, lo pintamos y luego colocamos todos los botones en su lugar. Lo más interesante que hicimos fue pegar tres capas de cartón en la parte superior del controlador para darle más rigidez. Esto hizo que fuera algo difícil de cortar, pero funcionó perfectamente para hacer que la parte superior fuera casi tan sólida como la madera.

La Raspberry Pi 3B + tiene cuatro puertos USB. ¡Tenemos una familia de cuatro y 4 juegos de botones arcade! Esta fue la predestinación.

Paso 2: la programación

La programación
La programación
La programación
La programación
La programación
La programación
La programación
La programación

El código de este proyecto es simple y con errores. Todo se puede encontrar aquí:

github.com/melvyniandrag/SuperTuxJunkKart Los 4 controladores están conectados a través de usb a una raspberry pi. En la Raspberry pi, se está ejecutando una pequeña secuencia de comandos de Python. Usé la biblioteca de entradas de Python para obtener las señales de los botones y joysticks. Luego, el programa transforma la señal en un código ASCII corto y la envía a través de un conector TCP a través de wifi a una PC que ejecuta un juego (me referiré a esto como el servidor del juego). Por ejemplo, cuando el jugador 0 mueve el joystick hacia la izquierda, los caracteres '0XL' se envían a través del conector TCP al servidor del juego. Para las pruebas, ejecuté SuperTuxKart en mi thinkpad. Una pequeña aplicación de servidor se ejecuta en el thinkpad y escucha en el socket TCP. Los códigos que provienen de raspberry pi a través de wifi se traducen en pulsaciones de botones en el teclado a través de la biblioteca pyautogui. Entonces, cuando el jugador 0 en el controlador de cartón mueve el joystick hacia la izquierda y el controlador emite 'OXL', el servidor que ejecuta el juego cree que el jugador presionó el botón '1' en el teclado. El juego debe configurarse para reconocer estas pulsaciones de teclado como se puede mostrar en la pantalla de opciones aquí. Este juego funciona bien con uno o dos jugadores, pero cuando 4 personas juegan SuperTuxKart agresivamente, el servidor comienza a perder algunos datos del controlador. No estoy seguro de si se trata de un error: 1. En el lado del cliente (controlador) 2. En el lado del servidor (thinkpad) 3. Funcionalidad Linux incorporada. Tal vez mi computadora portátil Ubuntu no pueda reconocer una gran cantidad de pulsaciones de teclas simultáneas. Entonces, si los jugadores 0, 1 y 2 están girando hacia arriba y hacia la izquierda, eso significa que se presionan 2 * 3 = 6 botones a la vez. No estoy seguro de si mi computadora (o cualquier computadora) está diseñada para manejar eso. Por lo general, las teclas de acceso rápido son 3 o menos botones, p. Ej. CTRL + ALT + SUPR. En el futuro, intentaré iniciar 4 sockets tcp, uno para cada controlador, y luego en el lado del servidor creando un panel de juego virtual. Todavía no he tenido tiempo de ver cómo hacer eso entre la crianza, el trabajo y el corte de cajas de cartón.

Paso 3: el futuro

Esta fue una simple prueba de concepto. En el futuro, el código debe mejorar. Me gustaría codificar la conexión como un dispositivo HID bluetooth, pero bluez5 en Linux es un poco de tiempo para trabajar, es por eso que elegí un socket TCP + Python. Además, seamos sinceros, el controlador parece como diablos. Con más tiempo, invertiría un poco más de energía en cortar con más cuidado. Luego pondría más soportes, los lados de la caja están comenzando a deformarse un poco. Sin embargo, para lo que es y lo que cuesta, esta cosa se ve lo suficientemente bien. Seguiré jugando mientras vemos películas por la noche.

Recomendado: