http://bugs.winehq.org/show_bug.cgi?id=25729
Summary: Dead Space joypad always looks up Product: Wine Version: 1.3.11 Platform: x86-64 OS/Version: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: directx-dinput AssignedTo: wine-bugs@winehq.org ReportedBy: H3g3m0n@gmail.com
When the game starts while a joypad is plugged in, the character will always look up. Other that that the gamepad works fine.
Unplugging the gamepad after starting the game doesn't stop the looking up.
Someone else reported a similar problem in the first post here: http://appdb.winehq.org/objectManager.php?sClass=version&iId=14457
http://bugs.winehq.org/show_bug.cgi?id=25729
simplexe simplexe@mail.ru changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW Ever Confirmed|0 |1
--- Comment #1 from simplexe simplexe@mail.ru 2011-02-02 11:21:26 CST --- *** This bug has been confirmed by popular vote. ***
http://bugs.winehq.org/show_bug.cgi?id=25729
--- Comment #2 from butraxz@gmail.com 2013-08-05 12:35:54 CDT --- This ticket has not been updated for over 900 days. Development recommends to check the status on your bug every release or two and let to be known if the bug is still present. If not, mark it fixed.
Is this still an issue with 1.7.0 or higher ?
http://bugs.winehq.org/show_bug.cgi?id=25729
Mystic-Mirage mm@m10e.net changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |mm@m10e.net
--- Comment #3 from Mystic-Mirage mm@m10e.net 2013-08-24 01:14:03 CDT --- This bug is still present in 1.7.0
http://bugs.winehq.org/show_bug.cgi?id=25729
--- Comment #4 from Mystic-Mirage mm@m10e.net 2013-09-15 15:00:29 CDT --- Creation of file ~/Electronic Arts/Dead Space/joypad.txt with line "Pad.RightStick.Y = Borked" fixes this issue for me.
https://bugs.winehq.org/show_bug.cgi?id=25729
--- Comment #5 from Austin English austinenglish@gmail.com --- This is your friendly reminder that there has been no bug activity for over a year. Is this still an issue in current (1.7.37 or newer) wine? If so, please attach the terminal output in 1.7.37 (see http://wiki.winehq.org/FAQ#get_log).
https://bugs.winehq.org/show_bug.cgi?id=25729
--- Comment #6 from Mystic-Mirage mm@m10e.net --- Created attachment 50859 --> https://bugs.winehq.org/attachment.cgi?id=50859 terminal log
https://bugs.winehq.org/show_bug.cgi?id=25729
--- Comment #7 from Mystic-Mirage mm@m10e.net --- This is still an issue in 1.7.37 Terminal log attached
https://bugs.winehq.org/show_bug.cgi?id=25729
Rixa rixa@cs.tut.fi changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |rixa@cs.tut.fi
--- Comment #8 from Rixa rixa@cs.tut.fi --- I'm not sure if this is a bug as such or just unexpected circumstances. The heart of the problem is that the game mistakes the triggers for the right stick. It's looking up and rotating because the triggers are fully released. Press the triggers about halfway and you'll see.
I have gotten this with x360 and xbone controllers in several directinput games. When I do, I have this file ready with axis settings for my controllers (through xpad.ko, xboxdrv, wired and wireless) that I regedit /s:
REGEDIT4
[HKEY_CURRENT_USER\Software\Wine\DirectInput] "Microsoft X-Box 360 pad (event)"="X,Y,Slider1,Z,Rz,Slider2,POV1" "Xbox Gamepad (userspace driver) (event)"="X,Y,Z,Rz,POV1" "Xbox 360 Wireless Receiver (XBOX) (event)"="X,Y,Slider1,Z,Rz,Slider2" "Microsoft X-Box One pad (event)"="X,Y,Slider1,Z,Rz,Slider2,POV1"
[HKEY_CURRENT_USER\Software\Wine\DirectInput\Joysticks] "Microsoft X-Box 360 pad (js)"="disabled" "Xbox Gamepad (userspace driver) (js)"="disabled" "Xbox 360 Wireless Receiver (XBOX) (js)"="disabled" "Microsoft X-Box One pad (js)"="disabled"
The latter part disables the sticks through the js interface so they aren't visible twice as they are by default, which too is kind of odd. I wish wine also had settings for remapping buttons, but that's bug #35815.
https://bugs.winehq.org/show_bug.cgi?id=25729
--- Comment #9 from Bruno Jesus 00cpxxx@gmail.com --- A similar problem was fixed recently. Is this still an issue in wine-git version? If yes please attach a +joystick,+xinput,+dinput log. Read http://wiki.winehq.org/FAQ#get_log to learn how.
https://bugs.winehq.org/show_bug.cgi?id=25729
--- Comment #10 from Mystic-Mirage mm@m10e.net --- (In reply to Bruno Jesus from comment #9)
A similar problem was fixed recently. Is this still an issue in wine-git version? If yes please attach a +joystick,+xinput,+dinput log. Read http://wiki.winehq.org/FAQ#get_log to learn how.
Still an issue for me with wine commit 60f8b516e2a6233eaee8ae58cd2eccce998dd81f See attachment.
https://bugs.winehq.org/show_bug.cgi?id=25729
--- Comment #11 from Mystic-Mirage mm@m10e.net --- Created attachment 55404 --> https://bugs.winehq.org/attachment.cgi?id=55404 dead_space.txt.bz2
https://bugs.winehq.org/show_bug.cgi?id=25729
--- Comment #12 from Bruno Jesus 00cpxxx@gmail.com --- Thanks for the log, please use "wine control joy.cpl" and disable the js joystick and try only with the event joystick, if it does not work try enabling the js and disabling the event one. I say this because from your log the game is polling both joystick drivers at the same time. Maybe we can narrow this bug to a particular drive.
https://bugs.winehq.org/show_bug.cgi?id=25729
--- Comment #13 from Mystic-Mirage mm@m10e.net --- (In reply to Bruno Jesus from comment #12)
Thanks for the log, please use "wine control joy.cpl" and disable the js joystick and try only with the event joystick, if it does not work try enabling the js and disabling the event one. I say this because from your log the game is polling both joystick drivers at the same time. Maybe we can narrow this bug to a particular drive.
No luck -- the same issue using only js or only event driver.
https://bugs.winehq.org/show_bug.cgi?id=25729
--- Comment #14 from Bruno Jesus 00cpxxx@gmail.com --- Well, we are not alone, windows users also report the issue:
https://steamcommunity.com/app/17470/discussions/0/864950181823201258/ http://www.gamefaqs.com/boards/949616-dead-space/46195848
Advices are: remove the gamepad =/
As comment 8 states the game is using the wrong axes to control the camera. An Xbox 360 controller has 6 axes:
- left stick horizontal; - left stick vertical; - right stick horizontal; - right stick vertical; - RT button; - LT button.
The game is choosing RT/LT to control the camera instead of the right stick. This could still be a problem in wine, if the game is requesting the axes using specific flags that we currently ignore or do not implement. Otherwise there is nothing we can do and it is a game bug.
https://bugs.winehq.org/show_bug.cgi?id=25729
--- Comment #15 from Bruno Jesus 00cpxxx@gmail.com --- Created attachment 55413 --> https://bugs.winehq.org/attachment.cgi?id=55413 debug patch
Please get a new +dinput log with the attached patch.
https://bugs.winehq.org/show_bug.cgi?id=25729
--- Comment #16 from Mystic-Mirage mm@m10e.net --- Created attachment 55419 --> https://bugs.winehq.org/attachment.cgi?id=55419 new_dead_space.log.bz2
https://bugs.winehq.org/show_bug.cgi?id=25729
--- Comment #17 from Mystic-Mirage mm@m10e.net --- (In reply to Bruno Jesus from comment #15)
Created attachment 55413 [details] debug patch
Please get a new +dinput log with the attached patch.
Here it is
https://bugs.winehq.org/show_bug.cgi?id=25729
--- Comment #18 from Rixa rixa@cs.tut.fi --- It is possible to remap the axes, either in wine (see my Comment 8) or the game itself. The latter is through a file in My Documents (I think it's your home directory in wine by default) at "Electronic Arts/Dead Space/joypad.txt". There is a joypad_example.txt there that may give a clue of how it's done.
Unfortunately this will still not yield a perfect configuration since it is not possible to assign button actions to the analogue triggers through either method, and it gets to be a bummer for Dead Space.
However, Dead Space also supports XInput. Wine doesn't, but I have had good results using the third party program x360ce, with this game and many others that do. All the controls work, and as an added bonus it has AntiDeadZone features that help undo some of the control weirdness of the PC port.
The setup program needs a bunch of dotnet winetricks to run, I don't even have the list of them all. They are only needed to build the configuration though, once it's ready you just drop it as x360ce.ini with the custom xinput1_3.dll to the game directory and that's it.
Well, for Dead Space you'll also want to make sure the joypad.txt (see the first paragraph) file is empty, or you will get surprising results. I think it's trying apply those in addition to what it's getting from XInput.
In general I think it would be really neat and make many newer games run so much smoother with a gamepad if wine just supported XInput out of the box, at least for the known microsoft controllers that pretty much define it.
https://bugs.winehq.org/show_bug.cgi?id=25729
--- Comment #19 from Rixa rixa@cs.tut.fi --- Created attachment 55427 --> https://bugs.winehq.org/attachment.cgi?id=55427 My x360ce configuration for Dead Space
For reference, the x360ce.ini that I used for Dead Space. I use pretty much the same file for every XInput game, but for this one I added some AntiDeadZone because the game has an excess of deadzone to begin with.
Apologies for this not being directly relevant to the bug, but it may be of interest to those who find it hoping to play Dead Space with a controller in wine.
I'm using the xbox one controller and the driver from Valve. May require customization for other controllers.
https://bugs.winehq.org/show_bug.cgi?id=25729
Bruno Jesus 00cpxxx@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Summary|Dead Space joypad always |Dead Space joypad always |looks up |looks up (game chooses | |wrong axis when DirectInput | |is used and more than 4 | |axes are present) Status|NEW |RESOLVED Keywords| |hardware Resolution|--- |DUPLICATE Component|directx-dinput |-unknown
--- Comment #20 from Bruno Jesus 00cpxxx@gmail.com --- I was able to test this in Windows and the problem is also present when dinput is used, but since xinput can be used to make the game work properly instead of resolving as invalid I'll mark as duplicate.
*** This bug has been marked as a duplicate of bug 38816 ***
https://bugs.winehq.org/show_bug.cgi?id=25729
--- Comment #21 from Mystic-Mirage mm@m10e.net --- (In reply to Bruno Jesus from comment #20)
I was able to test this in Windows and the problem is also present when dinput is used, but since xinput can be used to make the game work properly instead of resolving as invalid I'll mark as duplicate.
*** This bug has been marked as a duplicate of bug 38816 ***
This issue affects me when I use my gamepad in xinput mode
https://bugs.winehq.org/show_bug.cgi?id=25729
--- Comment #22 from Bruno Jesus 00cpxxx@gmail.com --- (In reply to Mystic-Mirage from comment #21)
This issue affects me when I use my gamepad in xinput mode
Wine does not support xinput, how did you test this?
https://bugs.winehq.org/show_bug.cgi?id=25729
--- Comment #23 from Mystic-Mirage mm@m10e.net --- (In reply to Bruno Jesus from comment #22)
(In reply to Mystic-Mirage from comment #21)
This issue affects me when I use my gamepad in xinput mode
Wine does not support xinput, how did you test this?
lsusb | grep Gamepad Bus 002 Device 005: ID 046d:c21d Logitech, Inc. F310 Gamepad [XInput Mode]
Wine Control Panel > Game Controllers > Test Joystick -- everything moves and pressed
https://bugs.winehq.org/show_bug.cgi?id=25729
--- Comment #24 from Bruno Jesus 00cpxxx@gmail.com --- I see, there is a definition problem here. It is very unfortunate but 2 different technologies have the same name: - From X.org used to read events from devices; - From Microsoft used to read joystick input;
Sometimes they are spelled in all sort of ways: XInput, Xinput, xinput. Since we are talking about Wine and joysticks I'm referring to the MS library.
What you are seeing is that your joystick is handled in Linux using X.org Xinput.
When you test your joystick in Wine control panel that is Wine's implementation of DirectInput (dinput).
Wine does not implement MS XInput yet, which is why Dead Space is using DirectInput instead and then causing the failure.
https://bugs.winehq.org/show_bug.cgi?id=25729
--- Comment #25 from Mystic-Mirage mm@m10e.net --- (In reply to Bruno Jesus from comment #24)
I see, there is a definition problem here. It is very unfortunate but 2 different technologies have the same name:
- From X.org used to read events from devices;
- From Microsoft used to read joystick input;
Sometimes they are spelled in all sort of ways: XInput, Xinput, xinput. Since we are talking about Wine and joysticks I'm referring to the MS library.
What you are seeing is that your joystick is handled in Linux using X.org Xinput.
When you test your joystick in Wine control panel that is Wine's implementation of DirectInput (dinput).
Wine does not implement MS XInput yet, which is why Dead Space is using DirectInput instead and then causing the failure.
Oh, I see. Thank you!
https://bugs.winehq.org/show_bug.cgi?id=25729
Frédéric Delanoy frederic.delanoy@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #26 from Frédéric Delanoy frederic.delanoy@gmail.com --- Closing DUPLICATE bugs.