-
Notifications
You must be signed in to change notification settings - Fork 12
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Unable to get working controller in Pinball FX2 #2
Comments
Yeah, Microsoft Studios logo always promises "fun" :( It appears to call some undocumented functions in that dll. I'll try to check if they are documented anywhere at least unofficially, because unless they are implemented, that one will just crash. This should also give you answer on why I'm not linking this from SC-Controller. It's still kinda work in progress and I know very little about coding for Windows/Wine, so I can't guarantee it will not eat you while you sleep :) |
the 32 bit DLL crashes, the 64 bit DLL loads the game but does nothing.
I'd take WIP 0-config DLL any day over an annoying .exe you have to configure, even though it may not work with everything. "Here be dragons but you may try this out" would be very welcome ^^
The wonders of proprietary software and Microsoft's documentation :P |
Game is 32bit, so it will ignore 64bit dll.
I'm actually playing with this right now and have dll that doesn't crash with anything. It also does nothing, but that may be easy part now :) |
The controller now "works" but seems like if I try to select a table it moves by 2 tables instead of just one, and the table info is now endlessly opening and closing. EDIT: Apart from that the game seems playable, but there is some glitching with some menus for sure. EDIT2: After playing one table, the table selection fixed itself (at least for this instance) but the table info is still horribly broken and viewing a table guide just endlessly scrolls it on its own. EDIT: That is with both 32-bit DLLs copied in the game folder |
Wine duplicates every gamepad it finds, once for evdev and once for js input. Maybe that Pinball captures inputs from "both" gamepads? // edit: Yep, that appears to be case. |
I'm not sure what should I press to get table info :D Anyway, with that anti-doubling fix above, there is good chance it will work as it should. |
Could you please give me a list of your WINE overrides? I tried to fix it by removing all my overrides (about a 100 since I was testing stuff), but now I can't figure out which ones I actually need to make the controller work. I tried adding the 2 xinput overrides as EDIT: Also perhaps add those to the README.MD, since it's only by chance I had them set correctly from before. EDIT2: Nvm I'm an idiot, adding those 2 xinput overrides actually works, but one cannot accidentally select "xaoput1_3" or whatever else that was. EDIT3: This actually fixed everything except the annoying descriptions. They still blink and make noise like crazy. https://www.youtube.com/watch?v=wkzeUn_1QuM&feature=youtu.be |
mscoree (native) But I don't think anything is actually needed, dll located next to exe should always take precedense. |
Well the controller doesn't work for me on wine-staging 2.13 without the 2 overrides, I'd denote those in the README.MD. xinput1_3 (native, then built in) Does it work for you if you remove your overrides? Also, do you have the same issue as me on the video? EDIT: Btw the readme has a typo |
It shouldn't behave like that, but it appears you are right.
Nope, I can select those, only with mouse, but without any blinking nor other isssue. |
Urgh, time to track it down. if you only use those 2 overrides, does the issue pop up? What version of WINE are you using? Are you using staging or wine-devel? Any other configuration?(virtual desktop, CSMT on,...) Any weird prefix you're using in sc-controller? I just use the "Xbox Controller" default one and otherwise don't touch the software. 32-bit or 64-bit WINE prefix? WINE windows version? EDIT: Also if I go to the controls options I get this constant switching to the left, seems like there's a constant input that gets spammed, any way I can track it down other than trying to replicate your env? EDIT2: The issues keep happening even after turning the controller off or even when starting the game with controller turned off, seems it's the DLLs that break the game. |
I'll check that later but I doubt it will be reason.
32bit, staging 2.13 as well. I'm using PlayOnLinux, so build is from their repository. It's default install for Steam with .NET 4.5 installed on top, Windows version set to Win7.
Default Xbox Controller and XBox with high precision camera works for me as well.
Turning controller off doesn't actually disables emulated one, so that's expected :) Can you grab some XInput tester (for windows ofc) and check inputs in it? I'm using XInput test from x360ce package. Also, please make sure that you are running very last commit as that game had issues on my side before as well. |
I'm unable to use xinputtest (found some 2010 version of XinputTest.exe), suggestions on how to get it to run or suggestions for some other tool? (tried winetricks dotnet45 and winetricks dotnet11) Also the bug still happens on a clean 32 bit prefix. |
So, I've tested, just those 2 overrides are enough to make it work on my side.
Try this one, it seems to be based on QT and works as well. |
Apparently, I somehow managed to not copy right stick data in last three commits and it looks like right stick is what controls that blinking area. So, I'm not saying that was reason for all your problems, but I really can't deny that possibility... |
That fixed the blinking issues!! Self-moving menus are still a thing though (it's as if you held the d-pad or the left joystick to the right), but it only happen sometimes. Also sometimes it only moves once to the right when entering some menu, and not as if being held. I'm wondering if the cause is butterfingers touching the D-pad, because when I try to somehow reproduce it, I'm not able to. |
I'm guessing that by not setting those values, random uninitialized data ended up in there. So maybe I was just lucky to get numbers small enough for game to ignore them. Tester shown them zeroed.
That Pinball reacts weirdly to diagonal dpad inputs, so I'd guess butterfingers :D Frankly, reproducing anything in there doesn't look like good idea, that's why I asked about that testing application :) If tester shows correct values while game doesn't, it's most likely problem in game itself. |
http://store.steampowered.com/app/226980/
The game is F2P, so feel free to test it yourself, maybe I'm doing something stupid.
I was able to get the controller to work in Dark Souls 2 SotFS, but when I quit the game and started the pinball game instead, it didn't work. I did copy the dll to the game folder with the executable.
The text was updated successfully, but these errors were encountered: