Jump to content

[Windows] KSP won't "accept" Joystick axes


Recommended Posts

1.05.1024 Not fixed in my case (Logitech Force 3D Pro)

Had fresh install. Tried a few times with deleting settings.cfg :rolleyes:

Menu doesn't freeze like before the update. And KSP detects the joystick. Also changes settings.cfg without damaging anything. Yet when I accept the binding, binding goes "Not Found". Still had tried to fly with "Not Found" well No Joy.

After update I got high hopes about this bug being fixed, saw changelog and did fresh install, menu not freezing was the moment I was sure it was fixed, and then, well this is a total bummer. ;.;

22s0R47Y.png

22rMZR1C.png

cleaned settings.cfg, did 1.05.1028 hotfix, tried to set pitch axis again:

settings.cfg : http://pastebin.com/LLVq5YV1

DxDiag : http://pastebin.com/Dff35TGL

Full Output_log.txt : https://www.dropbox.com/s/gf7qd646iowx2aw/output_log.txt?dl=0

here is last part of output_log.txt which shows joystick setting change.


[HighLogic]: =========================== Scene Change : From MAINMENU to SETTINGS =====================

(Filename: C:/buildslave/unity/build/artifacts/StandalonePlayerGenerated/UnityEngineDebug.cpp Line: 56)


UnloadTime: 6.462287 ms
Unloading 2 Unused Serialized files (Serialized files now loaded: 0 / Dirty serialized files: 0)


Unloading 201 unused Assets to reduce memory usage. Loaded Objects now: 109028.
Total: 90.822525 ms (FindLiveObjects: 4.394149 ms CreateObjectMapping: 3.087836 ms MarkObjects: 81.487175 ms DeleteObjects: 1.534424 ms)


Launcher start settings screen: False

(Filename: C:/buildslave/unity/build/artifacts/StandalonePlayerGenerated/UnityEngineDebug.cpp Line: 56)


Joystick Names:
0: Joystick 0

(Filename: C:/buildslave/unity/build/artifacts/StandalonePlayerGenerated/UnityEngineDebug.cpp Line: 56)


[InputSettings]: listen target set to joy0.0 - Joystick 0; Axis 0, Device 0

(Filename: C:/buildslave/unity/build/artifacts/StandalonePlayerGenerated/UnityEngineDebug.cpp Line: 56)


[InputSettings]: listen target set to joy0.1 - Joystick 0; Axis 1, Device 0

(Filename: C:/buildslave/unity/build/artifacts/StandalonePlayerGenerated/UnityEngineDebug.cpp Line: 56)


[InputSettings]: listen target set to joy0.1 - Joystick 0; Axis 1, Device 0

(Filename: C:/buildslave/unity/build/artifacts/StandalonePlayerGenerated/UnityEngineDebug.cpp Line: 56)


[InputSettings]: listen target set to joy0.1 - Joystick 0; Axis 1, Device 0

(Filename: C:/buildslave/unity/build/artifacts/StandalonePlayerGenerated/UnityEngineDebug.cpp Line: 56)


[InputSettings]: listen target set to joy0.1 - Joystick 0; Axis 1, Device 0

(Filename: C:/buildslave/unity/build/artifacts/StandalonePlayerGenerated/UnityEngineDebug.cpp Line: 56)


[InputSettings]: listen target set to joy0.1 - Joystick 0; Axis 1, Device 0

(Filename: C:/buildslave/unity/build/artifacts/StandalonePlayerGenerated/UnityEngineDebug.cpp Line: 56)


[InputSettings]: listen target set to joy0.1 - Joystick 0; Axis 1, Device 0

(Filename: C:/buildslave/unity/build/artifacts/StandalonePlayerGenerated/UnityEngineDebug.cpp Line: 56)


[InputSettings]: listen target set to joy0.1 - Joystick 0; Axis 1, Device 0

(Filename: C:/buildslave/unity/build/artifacts/StandalonePlayerGenerated/UnityEngineDebug.cpp Line: 56)


[InputSettings]: listen target set to joy0.1 - Joystick 0; Axis 1, Device 0

(Filename: C:/buildslave/unity/build/artifacts/StandalonePlayerGenerated/UnityEngineDebug.cpp Line: 56)


listen target set to: Joystick 0

(Filename: C:/buildslave/unity/build/artifacts/StandalonePlayerGenerated/UnityEngineDebug.cpp Line: 56)


Launcher here(in write): False

(Filename: C:/buildslave/unity/build/artifacts/StandalonePlayerGenerated/UnityEngineDebug.cpp Line: 56)


[HighLogic]: =========================== Scene Change : From SETTINGS to MAINMENU =====================

(Filename: C:/buildslave/unity/build/artifacts/StandalonePlayerGenerated/UnityEngineDebug.cpp Line: 56)


UnloadTime: 3.747792 ms
Unloading 2 Unused Serialized files (Serialized files now loaded: 0 / Dirty serialized files: 0)


Unloading 9 unused Assets to reduce memory usage. Loaded Objects now: 111377.
Total: 89.500816 ms (FindLiveObjects: 4.115746 ms CreateObjectMapping: 3.587935 ms MarkObjects: 81.011192 ms DeleteObjects: 0.341524 ms)

Edited by shotwn
add log files
Link to comment
Share on other sites

I second shotwn, unfortunately it doesn't work for me either. After pressing "accept", the settings still says "not found" :( anything I can do to debug this? I'm trying to look at the output_log.txt now...

- - - Updated - - -

Here's the last portion of the output_log... i tried to map 2 axis (0.2 and 0.5) but it still doesn't work... could it be a name issue?

Names:

0: Joystick 0

1: Joystick - HOTAS Warthog

(Filename: C:/buildslave/unity/build/artifacts/StandalonePlayerGenerated/UnityEngineDebug.cpp Line: 56)

[inputSettings]: listen target set to joy0.0 - Joystick 0; Axis 0, Device 0

(Filename: C:/buildslave/unity/build/artifacts/StandalonePlayerGenerated/UnityEngineDebug.cpp Line: 56)

[inputSettings]: listen target set to joy0.5 - Joystick 0; Axis 5, Device 0

(Filename: C:/buildslave/unity/build/artifacts/StandalonePlayerGenerated/UnityEngineDebug.cpp Line: 56)

[inputSettings]: listen target set to joy0.5 - Joystick 0; Axis 5, Device 0

(Filename: C:/buildslave/unity/build/artifacts/StandalonePlayerGenerated/UnityEngineDebug.cpp Line: 56)

[inputSettings]: listen target set to joy0.5 - Joystick 0; Axis 5, Device 0

(Filename: C:/buildslave/unity/build/artifacts/StandalonePlayerGenerated/UnityEngineDebug.cpp Line: 56)

listen target set to: Joystick 0

(Filename: C:/buildslave/unity/build/artifacts/StandalonePlayerGenerated/UnityEngineDebug.cpp Line: 56)

[inputSettings]: listen target set to joy0.0 - Joystick 0; Axis 0, Device 0

(Filename: C:/buildslave/unity/build/artifacts/StandalonePlayerGenerated/UnityEngineDebug.cpp Line: 56)

[inputSettings]: listen target set to joy0.2 - Joystick 0; Axis 2, Device 0

(Filename: C:/buildslave/unity/build/artifacts/StandalonePlayerGenerated/UnityEngineDebug.cpp Line: 56)

[inputSettings]: listen target set to joy0.2 - Joystick 0; Axis 2, Device 0

(Filename: C:/buildslave/unity/build/artifacts/StandalonePlayerGenerated/UnityEngineDebug.cpp Line: 56)

[inputSettings]: listen target set to joy0.2 - Joystick 0; Axis 2, Device 0

(Filename: C:/buildslave/unity/build/artifacts/StandalonePlayerGenerated/UnityEngineDebug.cpp Line: 56)

[inputSettings]: listen target set to joy0.2 - Joystick 0; Axis 2, Device 0

(Filename: C:/buildslave/unity/build/artifacts/StandalonePlayerGenerated/UnityEngineDebug.cpp Line: 56)

listen target set to: Joystick 0

(Filename: C:/buildslave/unity/build/artifacts/StandalonePlayerGenerated/UnityEngineDebug.cpp Line: 56)

[inputSettings]: listen target set to joy0.5 - Joystick 0; Axis 5, Device 0

(Filename: C:/buildslave/unity/build/artifacts/StandalonePlayerGenerated/UnityEngineDebug.cpp Line: 56)

[inputSettings]: listen target set to joy0.5 - Joystick 0; Axis 5, Device 0

(Filename: C:/buildslave/unity/build/artifacts/StandalonePlayerGenerated/UnityEngineDebug.cpp Line: 56)

listen target set to: Joystick 0

(Filename: C:/buildslave/unity/build/artifacts/StandalonePlayerGenerated/UnityEngineDebug.cpp Line: 56)

Launcher here(in write): False

(Filename: C:/buildslave/unity/build/artifacts/StandalonePlayerGenerated/UnityEngineDebug.cpp Line: 56)

Link to comment
Share on other sites

My stick wasn't detected at all the first time, but was when restarting KSP with the stick still attached, and bound successfully.

Persisted over another restart as well, my stick is really old though, a Logitech wingman extreme with gameport connector in a USB adapter.

Please try restarting KSP so your stick shows up in the settings.cfg, it may help.

Edit:

Oh yeah, the controller name thing, Unity doesn't see them as individual sticks :/

Link to comment
Share on other sites

So... should I edit the name of the joystick? Funny thing is that if I open up settings.cfg and search for joystick 0 I find it correctly assigned to the throttle axis... I don't know what to do at this point, i'm just going to try random stuff related to the name of the joystick...

If anyone has some suggestions, I'll try them all!

Link to comment
Share on other sites

I'm not sure if it can be renamed, but people keep reporting that HOTAS setups aren't working because KSP/Unity says they are the same stick.

If it can be identified as its own controller then there shouldn't (crosses fingers) be a problem.

Link to comment
Share on other sites

hi sal_vager,

as per your suggestion I looked in settings.cfg, and although during the axis mapping the label changes accordingly (Joystick 0, Axis 5) and in settings.cfg it correctly saves the binding:

AXIS_THROTTLE

{

PRIMARY

{

name = Joystick 0

axis = 5

inv = False

sensitivity = 1

deadzone = 0.05

scale = 1

group = 0

modeMask = 7

}

[...]

under this section I don't see "joystick 0"

INPUT_DEVICES

{

Joystick - HOTAS Warthog = 1

}

but just my other joystick. I tried to add the line manually myself, but after I tried to run the game the file was back as it was before. :(

Link to comment
Share on other sites

Yeah I don't think it's possible to rename it this way, the problem as far as I have been able to understand it is that the Unity engine just can't tell that some stick and throttle combinations are separate controllers, so it adds them together.

Players have in the past used stuff like ppjoy to set up their sticks, but even just detecting sticks was broken in 1.0.0 to 1.0.4, but now that's working again it may be possible to use ppjoy to make the stick and throttle separate controllers again, as far as KSP/Unity is concerned.

Edit:

Guys please check out HellBenders post on sticks in KSP, it may help if you're using a HOTAS setup.

Edited by sal_vager
Link to comment
Share on other sites

I have a CH Products fighter stick and pro throttle.

I mapped them today in direct mode, and the stick works great, but the throttle axis on the throttle doesn't work at all.

I tried it in a basic mapped mode and no axes worked on either stick.

Link to comment
Share on other sites

There's two throttle bindings, normal and incremental, so try the other if one doesn't work for you, also when changing stick modes (or sticks completely) restart KSP with the new stick/mode (this may need a second restart) so KSP detects it at startup, KSP does not have any hotswap ability with controllers.

Link to comment
Share on other sites

[FIXED] ok, that doesn't help. with my pro pedals plugged in and everything in direct mode, the pedals basically take over the axes from the throttle and stick. KSP only ever sees axis 00, 01, and 02. the stick has all three, the throttle has one, and the pedals have all three. I changed the axis settings in the CH manager so that the pedals had different axes than the stick/throttle, but KSP stills sees them all as variations of the 00, 01, and 02.

Does KSP have a hard 3-axis limit on input?

EDIT: ok, i forgot to upload the new map to the controllers. After making a brand new new map and running in mapped mode in the ch manager, I got everything working for axes!!!!!!!! pedals work for yaw, stick works and throttle works. now for button mapping!

BTW, throttle is used on standard throttle axis with inverted turned on!

Edited by SHaFT7
Link to comment
Share on other sites

  • 2 months later...

I am late to this party, but was still having this issue. I avoided it by mostly playing 0.90 (which still worked fine for me).

I had the problem of moving the sticks to select the input sources, then none of them working in-game (buttons all fine)

I use CH throttle and stick using CH Control Manager to bypass button and axis limit.

In reading this thread, and learning of PumaX's trick of mapping axis to Device 2, which has worked so far. fingers crossed that it sticks.

This is great news, as I can fly (space)planes again!

Link to comment
Share on other sites

  • 3 months later...

having the same issue. Seems that maybe KSP just doesn't support more than 2 devices at once for some reason?

 

Saitek pedals, CH Pro Throttle, CH Fighterstick, here. Pedals and throttle work, stick does not. The stick is recognized in game as "joystick 2" pedals as 0, throttle as one. I wonder if, for everyone else here, the one that's not working is recognized as 'joystick 2'

 

I really don't want to use the CH manager to merge these into a single stick to get over the axis limit. That's a huge pain, and messes with all my other applications. A fix coming soon, I hope?

Link to comment
Share on other sites

  • 5 months later...

I came here hoping that my issue is sufficiently relevant that the people trying to find a solution to the problems already on this page may be able to help. I have a logitech extrmeme 3D Pro and an Xbox 360 controller like some of the above people. I run Windows 10 and KSP 1.2

Now, when I go to the settings and click on input and start trying to give it the secondary commands, it will accept the buttons just fine. However, when I go to try and input the joystick axis, it doesn't seem to acknowledge their existence. I click on the Pitch down button secondary input, pitch down on my controller, and nothing happens. Same with all the other axis related commands. I can understand maybe the little mini stick on top, but the joystick itself?
I checked on a website to see if my joystick was even working in the first place and it seems to say that everything works just fine. So the problem is somewhere between the stick software and the game. And I have a similar situation with the xbox contoller. It doesn't seem to acknowledge the joystick input commands, but the buttons work just fine.

I think it is worth mentioning that when I went to the site that was used to calibrate my joystick, it seemed to say that I was getting full input from the mini stick on top of the main stick. Pushing it in other directions only seemed to give it slightly less than full input (sometimes even negative depending on the direction i push it in). Is that a flaw in the joystick or intentional?

Ideas? Suggestions? Pre-existing solutions? Thank you in advance.

Link to comment
Share on other sites

No, not that at all, hold on I'll take a screenshot.

Edit.

It's just easier to see it.

jRtGlf7.png

That's the most common cause of failure to set up controllers, the other one is from plugging in the stick after KSP starts, KSP has to have the controller in the settings.cfg file before bindings will be saved.

Link to comment
Share on other sites

1 hour ago, sal_vager said:

No, not that at all, hold on I'll take a screenshot.

Are you plugging the controller in after KSP starts? It's unable to save the bindings if the controller has not been added to the settings.cfg, so please try restarting KSP with the controller attached.

Link to comment
Share on other sites

  • 2 months later...

Climberfx, locate your INPUT_DEVICES block in settings.cfg and look there. Probably you have something like " = 0", i.e. you have device 0 without a proper name. Than locate your axis settings. There for every axis you probably have "name = Joystick 0".

 

If it is your case, than you can't change INPUT_DEVICES block, but you can change axis settings block so it will have "name = " instead of "name = Joystick 0". It worked for me.

Edited by kstark
Link to comment
Share on other sites

12 minutes ago, kstark said:

Climberfx, locate your INPUT_DEVICES block in settings.cfg and look there. Probably you have something like " = 0", i.e. you have device 0 without a proper name. Than locate your axis settings. There for every axis you probably have "name = Joystick 0".

 

If it is your case, than you can't change INPUT_DEVICES block, but you can change axis settings block so it will have "name = " instead of "name = Joystick 0". It worked for me.

My input_devices field is empty.

Link to comment
Share on other sites

This thread is quite old. Please consider starting a new thread rather than reviving this one.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...