¿Cómo se configuran los controles mupen64plus?

10

Instalé mupen64plus desde los repositorios usando Synaptic. Me gusta el emulador (en su mayor parte, un par de fallas gráficas en TLOZ Ocarina of Time), especialmente su rendimiento en mi máquina anterior, pero no puedo entender cómo configurar los controles por mí mismo. Intenté mirar la guía de Google Code aquí, pero no puedo encontrar el archivo que necesito editar y el enlace con los identificadores de clave no funciona, por lo que incluso si pudiera encontrar el archivo no podría cambiar nada. Entonces, lo que necesito es un recurso con los identificadores clave y dónde encontrar el archivo que necesito editar.

Estoy ejecutando Ubuntu 12.10 de 32 bits. 2 GB de RAM, Intel CORE 2 DUO @ 2.00GHz

Aquí hay una parte adicional de la pregunta. M64py es una opción popular. Sin embargo, requiere que ingrese las rutas a los diversos archivos que necesita. ¿Dónde están las ubicaciones predeterminadas? Incluya tanto para el sistema de 32 bits como para el sistema de 64 bits. (Los archivos necesarios son archivo de biblioteca, directorio de complementos y directorio de datos).

Josh
fuente

Respuestas:

9

Puede configurar los controles utilizando un archivo de configuración. El método preferido sería usar una interfaz que tenga la configuración del controlador.

M64py

M64py es una interfaz Qt para Mupen64Plus. Se puede descargar desde aquí

Tiene una configuración de controlador ui como se muestra aquí

Puede configurar los controles desde aquí y luego iniciar los juegos desde aquí mismo o ejecutarlos mupen64plus /path/to/romen el terminal

Amith KK
fuente
55
Me encanta esa madriguera de dependencia. Python: simplemente funciona. Ah, pero primero debe instalar pyqt5, y para instalar pyqt5, debe compilar sip4, y para compilar sip4, necesita libpython2.7, e instalar libpython2.7 ... Y, por supuesto, incluso después de que obtuve el 5 millones de dependencias para compilar e instalar, m64py se niega a ejecutarse porque "about.ui", algo que espera DEL PROPIO REPOSITORIO DE M64PY, no existe. Python es imposible.
Braden Best
2
Esta aplicación no guarda los cambios realizados en la página de entrada SDL. Tenía la esperanza de que una interfaz gráfica de usuario agradable ayudara a mapear, pero ¿cuál es el punto si no se guarda en el archivo?
Kalamalka Kid
Los enlaces que realmente nos interesan: m64py.sourceforge.net github.com/mupen64plus/mupen64plus-ui-python
Andrew
8

Yo mismo no podía ejecutar una GUI para mupen, así que terminé descubriendo cómo configurarla y ejecutarla en la Terminal. El archivo que utilicé para configurar los controladores es:

~/.config/mupen64plus/mupen64plus.cfg

Allí encontré el área donde hablaba sobre los joysticks y calculé por prueba y error que si veo en mi controlador un número (los botones están numerados) escribo ese número menos uno en el archivo de configuración, y para los botones no estaba usando solo lo dejo en blanco, como en "". Dejaré el código que usé:

    [Input-SDL-Control1]
    # Mupen64Plus SDL Input Plugin config parameter version number.  Please don't change
    version = 1
    # Specifies whether this controller is 'plugged in' to the simulated N64
    plugged = True
    # Specifies which type of expansion pak is in the controller: 1=None, 2=Mem pak, 5=Rumble pak
    plugin = 2
    # If True, then mouse buttons may be used with this controller
    mouse = False
    # Specifies which joystick is bound to this controller: -2=Keyboard/mouse, -1=Auto config, 0 or more= SDL Joystick number
    device = 1
    # SDL joystick name (name check disabled if this is empty string)
    name = "DragonRise Inc.   Generic   USB  Joystick  "
    # Scaling factor for mouse movements.  For X, Y axes.
    MouseSensitivity = "2.00,2.00"
    # The minimum absolute value of the SDL analog joystick axis to move the N64 controller axis value from 0.  For X, Y axes.
    AnalogDeadzone = "4096,4096"
    # An absolute value of the SDL joystick axis >= AnalogPeak will saturate the N64 controller axis value (at 80).  For X, Y axes. For each axis, this must be greater than the corresponding AnalogDeadzone value
    AnalogPeak = "32768,32768"
    # Digital button configuration mappings
    DPad R = ""
    DPad L = ""
    DPad D = ""
    DPad U = ""
    Start = "button(9)"
    Z Trig = "button(6)"
    B Button = "button(1)"
    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(7)"
    L Trig = ""
    Mempak switch = ""
    Rumblepak switch = ""
    # Analog axis configuration mappings
    X Axis = "axis(0-,0+)"
    Y Axis = "axis(1-,1+)"
hglez86
fuente
5

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 jscalpara 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 js0está 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:

Controlador jscal y asignación de botones de joystick para mupen linux

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.inien 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 mupen64plusy 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.inipara 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.

Configuración de diseño de botones del controlador N64

iyrin
fuente