Desafortunadamente, m64py no era una solución que funcionara para mí y "prueba y error" es demasiado engorroso. Aquí hay una solución que cualquier persona que esté ejecutando actualmente mupen64plus, con o sin una interfaz gráfica de usuario, debería poder usarla.
Necesitará la herramienta de calibración del joystick jscal
para determinar qué botón es cuál. Para obtener ayuda con eso, vea Foros de Ubuntu - Juegos y Ocio - CÓMO: Joystick / Gamepads en Ubuntu
Suponiendo que tiene eso configurado y su joystick ya está calibrado correctamente, todo lo que necesita hacer es ejecutar jstest-gtk /dev/input/js0 &
, donde js0
está el archivo de calibración para el dispositivo que está probando actualmente.
Verá una interfaz gráfica de usuario para ejes y botones numerados. Se parece a esto:
Ahora puede presionar un botón en su controlador para ver con qué eje o botón corresponde.
Aplicación de la configuración del controlador personalizado para mupen
LocalizarInputAutoCfg.ini
Ejecutar locate InputAutoCfg.ini
. Para mí esto está en el directorio /usr/share/games/mupen64plus/InputAutoCfg.ini
.
Abra InputAutoCfg.ini
en su editor de texto preferido.
vim /usr/share/games/mupen64plus/InputAutoCfg.ini
.
Encuentra tu dispositivo y edita la configuración.
Puede averiguar qué dispositivo está utilizando mupen ejecutando mupen64plus
y mirando la información de entrada impresa en su terminal.
El mío dice Input: N64 Controller #1: Using auto-config with SDL joystick 0 ('Generic X-Box pad')
. Entonces, para mí, la configuración se encuentra en [Generic X-Box pad]
.
Guarde / escriba los cambios en el archivo y los cambios deben implementarse la próxima vez que lo ejecute mupen64plus
.
Después de algunos cambios, el mío se ve así:
[Generic X-Box pad]
plugged = True
plugin = 2
mouse = False
AnalogDeadzone = "4096,4096"
AnalogPeak = "32768,32768"
DPad R = "hat(0 Right)"
DPad L = "hat(0 Left)"
DPad D = "hat(0 Down)"
DPad U = "hat(0 Up)"
Start = "button(7)"
Z Trig = "button(4)"
B Button = "button(2)"
A Button = "button(0)"
C Button R = "axis(3+)"
C Button L = "axis(3-)"
C Button D = "axis(4+)"
C Button U = "axis(4-)"
R Trig = "button(5)"
L Trig = "axis(2+)"
Mempak switch = "axis(5+)"
Rumblepak switch = "button(2)"
X Axis = "axis(0-,0+)"
Y Axis = "axis(1-,1+)"
Utilizando jstest
, deberías poder descubrir cómo quieres configurar InputAutoCfg.ini
para personalizar tu configuración de entrada usando las palabras de evento de entrada .
A veces es útil mirar el diseño del controlador N64 para ayudar a descubrir los parámetros que pretende mapear.