Although I really should do other things right now, I invested some more time into the mouse fix to add some often requested features and fix some annoying bugs.
Beta 1.3 change log:
- Added preliminary modifier bindings that turn left and right attacks into heavy attacks (see Configuration for details)
- Made all modifier bindings non-blocking so they can also be used as a modifier in the ingame settings where applicable (see Configuration for details)
- Added proper Input Mode setting to the config that allows easy switching between mouse and controller input (see Configuration for details)
- Added experimental Steam Controller support (see Configuration for details)
- Replaced Toggle Mouse Fix binding with Toggle Input Mode
- Fixed bug that prevented the number keys from getting bound correctly
- Fixed bug in the GUI that prevented an action from getting unbound correctly when there was a default binding for it
From the documentation:
Modifiers change the behavior of a binding when they are down. The current implementation is preliminary and has some shortcomings:
- Modifiers are currently only available for movement as well as left and right attack. The implementation will be overhauled in the future to allow all actions to be bound with a modifier
- Any key or mouse button can be set as a modifier
- While a mouse wheel direction can be set as a modifier, it will not work properly, because rolling the mouse wheel cannot be hold down
- A key or button used as a modifier will not be blocked in the game to make it also usable as a modifier with the ingame keybindings. This also means that it may be necessary to unbind some ingame keybindings to make everything work properly
As you can see there are some drawbacks to the modifiers. Although I am really not happy with the way the modifier keys are implemented right now, I figured it would be better to have them for at least those bindings which seem to be most important to people, rather than not having them at all. But to be honest, I cannot wait to have some free time again to do modifiers and bindings in general properly.
Again from the documentation:
The input mode specifies the behavior of the fix:
- Mouse: Enables raw mouse camera and keyboard standard action bindings, deactivates controller input and vibrations
- Gamepad: Standard controller behavior, disables raw mouse camera and keyboard standard action bindings
- Steam Controller (experimental): Standard controller behavior with the exception that the raw mouse camera is enabled and the right analog stick is disabled
This point might be surprising to some people, but I had an unanticipated amount of requests to make the fix usable with the Steam Controller. Apparently the new mouse movement is a big improvement to the usual analog controls of the gamepad. I had actually posted an experimental version a few days back in the Steam Controller reddit, which now got fully incorporated into the fix alongside a few bugfixes.
I also took the opportunity to implement a proper input mode, because there previously was no clear divide in the code that specified when which components of the fix should be active or not. As you can see, it is now properly supported to have the fix installed alongside a controller and to switch between the input modes, even on-the-fly, without having to fiddle around with the setup.
This is all I can do for the moment. Although there are still things left to do and also a lot of room for improvements in other areas, most of those things either require a considerable update of the software or another deep look into the engine of the game, both of which I unfortunately currently do not have time for.
As always, let me know if you encounter any problems.