mupen64plus / mupen64plus-user-issues

Issue reports from users go here
http://www.mupen64plus.org/
17 stars 3 forks source link

Xbox One Wired Controller - a few remaining issues #723

Closed asciifaceman closed 4 years ago

asciifaceman commented 4 years ago
Mupen64Plus Console User-Interface Version 2.5.9
...
Input Warning: parsing error in MouseSensitivity parameter for controller 1
Input Warning: parsing error in AnalogDeadzone parameter for controller 1
Input Warning: parsing error in AnalogPeak parameter for controller 1
UI-Console: using Input plugin: 'Mupen64Plus SDL Input Plugin' v2.5.9
...
Input: 1 SDL joysticks were found.
Input Warning: parsing error in MouseSensitivity parameter for controller 1
Input Warning: parsing error in AnalogDeadzone parameter for controller 1
Input Warning: parsing error in AnalogPeak parameter for controller 1
Input: N64 Controller #1: Using manual config for SDL joystick 0
Input: 1 controller(s) found, 1 plugged in and usable in the emulator
Input: Rumble activated on N64 joystick #1
Input Warning: Couldn't open rumble support for joystick #2
Input Warning: Couldn't open rumble support for joystick #3
Input Warning: Couldn't open rumble support for joystick #4
Input: Mupen64Plus SDL Input Plugin version 2.5.9 initialized.
...
Input: Rumble activated on N64 joystick #1

I've been trying to set up my xbox one controller to more comfortably match an N64 layout for Ocarina of Time.

My current configuration

# CUSTOM XBONE
[Xbox One Wired Controller]
# Mupen64Plus SDL Input Plugin config parameter version number.  Please don't change this version number.
version = 2.000000
# Controller configuration mode: 0=Fully Manual, 1=Auto with named SDL Device, 2=Fully automatic
mode = 0
# Specifies which joystick is bound to this controller: -1=No joystick, 0 or more= SDL Joystick number
device = 0
# SDL joystick name (or Keyboard)
name = "Xbox One Wired Controller"
# 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 = 5
AnalogDeadzone = 4096,4096
AnalogPeak = 32768,32768
# Digital button configuration mappings
DPad R = "axis(3+)"
DPad L = "axis(3-)"
DPad D = "axis(4-)"
DPad U = "axis(4+)"
Start = "button(8)"
Z Trig = axis(2+)
B Button = "button(0)"
A Button = "button(1)"
C Button R = "button(14)"
C Button L = "button(13)"
C Button D = "button(12)"
C Button U = "button(11)"
R Trig = "button(5)"
L Trig = "button(4)"
Mempak switch = ""
Rumblepak switch = ""
# Analog axis configuration mappings
X Axis = axis(0-,0+)
Y Axis = axis(1-,1+)

Currently the only problems seem to be

  1. Up doesn't work, axis is fine for left/right/down but I can't move forward
  2. Z trigger only fires when the left trigger is let out, so it stays locked in z trigger mode once its pressed

Everything else appears to be working as well as I can tell, even rumble

Notes:

Movement was working fine, then it just stopped letting me move forward. I also had z trigger working but then it only started firing when the trigger was let out.

asciifaceman commented 4 years ago

It also feels like changes made to the configuration aren't being reflected in the emulator now

asciifaceman commented 4 years ago

It seems one of my mistakes was opening the UI python project to take a look at settings through it, now mupen ignores all configuration changes. Even changing the resolution in ~/.config/mupen64plus/ is ignored now

asciifaceman commented 4 years ago

I'm going to close this. When I updated to latest I didn't realize the config files moved to Application Support. I was able to clear out the config m64 wrote and it adopted my xbox one config.

For future googlers, this works beautifully for me:

# CUSTOM XBONE
[OSX: Xbox One Wired Controller]
[Xbox One Wired Controller]
# Mupen64Plus SDL Input Plugin config parameter version number.  Please don't change this version number.
version = 2.000000
# Controller configuration mode: 0=Fully Manual, 1=Auto with named SDL Device, 2=Fully automatic
mode = 0
# Specifies which joystick is bound to this controller: -1=No joystick, 0 or more= SDL Joystick number
device = 0
# SDL joystick name (or Keyboard)
name = "Xbox One Wired Controller"
# 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 = 5
AnalogDeadzone = "4096,4096"
AnalogPeak = "32768,32768"
# Digital button configuration mappings
DPad R = "axis(3+)"
DPad L = "axis(3-)"
DPad D = "axis(4-)"
DPad U = "axis(4+)"
Start = "button(8)"
Z Trig = "axis(2+)"
B Button = "button(0)"
A Button = "button(1)"
C Button R = "button(14)"
C Button L = "button(13)"
C Button D = "button(12)"
C Button U = "button(11)"
R Trig = "button(5)"
L Trig = "button(4)"
Mempak switch =
Rumblepak switch =
# Analog axis configuration mappings
X Axis = axis(0-,0+)
Y Axis = axis(1-,1+)

And to mupen staff: I first played emulated OOT over a decade ago, and man it looks and runs so well now. Hats off to you.