Universal Control Remapper (UCR) - v0.1.22 28th Oct 2018
Re: Universal Control Remapper (UCR) - v0.1.11 19th Feb 2017
I feel like a bother, but, after updating my folder with the update you put up, after i install "SCPVBus" am i supposed to see something different? The menu item still has the highlighted "Install" option, and not the Uninstall, and the mouse movement is still not working as a left joystick. Any ideas? And thanks for the help!
Re: Universal Control Remapper (UCR) - v0.1.11 19th Feb 2017
You will know when it works, as an XBox stick will appear in windows game controllers as soon as something is bound to vXBox in UCR.
If doing it from within UCR does not work, just go to the resources folder and in an admin command prompt, run the install.bat
If doing it from within UCR does not work, just go to the resources folder and in an admin command prompt, run the install.bat
Re: Universal Control Remapper (UCR) - v0.1.11 19th Feb 2017
This is the message i now get:
Device node created. Install is complete when drivers are installed...
Updating drivers for root\ScpVBus from c:\UCR\Resources\ScpVBus\ScpVBus.inf.
devcon.exe failed.
Device node created. Install is complete when drivers are installed...
Updating drivers for root\ScpVBus from c:\UCR\Resources\ScpVBus\ScpVBus.inf.
devcon.exe failed.
Re: Universal Control Remapper (UCR) - v0.1.11 19th Feb 2017
And you ran the devcon command in an administrator command prompt?
Re: Universal Control Remapper (UCR) - v0.1.11 19th Feb 2017
Maybe it is already installed? (But maybe in a broken state?) Did you try the uninstall?
I also created a support request thread on Shaul's forum - hopefully he will know what is going on.
http://vjoystick.sourceforge.net/site/i ... to-install
I also created a support request thread on Shaul's forum - hopefully he will know what is going on.
http://vjoystick.sourceforge.net/site/i ... to-install
Re: Universal Control Remapper (UCR) - v0.1.11 19th Feb 2017
Shaul is asking if he can get a copy of the log from the installation.
It is in C:\Windows\INF\setupapi.dev.log
It is in C:\Windows\INF\setupapi.dev.log
Re: Universal Control Remapper (UCR) - v0.1.11 19th Feb 2017
I'll move over to his thread, thanks for your help!
Re: Universal Control Remapper (UCR) - v0.1.11 19th Feb 2017
Hi,
The problem I have with UJR I posted in the other thread exists here too. My X-55 Throttle registers just fine as Stick 3, but my joystick (which I assume is stick 2, the only other available) won't pick up at all under any other stick and axis.
The problem I have with UJR I posted in the other thread exists here too. My X-55 Throttle registers just fine as Stick 3, but my joystick (which I assume is stick 2, the only other available) won't pick up at all under any other stick and axis.
Re: Universal Control Remapper (UCR) - v0.1.11 19th Feb 2017
Try mapping a button on the stick. When binding a button, you can just press the button, and UCR should detect the press, so you do not have to find the joystick ID.
Also try running PJP JoyId - this will tell you the ID of all sticks connected to your system (And let you change them)
Also try running PJP JoyId - this will tell you the ID of all sticks connected to your system (And let you change them)
Re: Universal Control Remapper (UCR) - v0.1.11 19th Feb 2017
Trying to map buttons doesn't work either. Nothing happens when I press buttons on the stick. Works for the throttle fine.
In JoyID it picks up my stick and throttle properly, Stick as #1 and throttle as #2.
I tried moving my stick to #6 and Throttle to #7, and then they both worked. So it seems there's something wrong with ID#1. What could that be?
In JoyID it picks up my stick and throttle properly, Stick as #1 and throttle as #2.
I tried moving my stick to #6 and Throttle to #7, and then they both worked. So it seems there's something wrong with ID#1. What could that be?
Re: Universal Control Remapper (UCR) - v0.1.11 19th Feb 2017
Do you have vJoy installed? If so, that is normally #1 - but it should show up in JoyIDs
Re: Universal Control Remapper (UCR) - v0.1.11 19th Feb 2017
I do, but even if it's turned off and it shows up blank in JoyID this still happens. I've also tried moving the vjoy joystick.
Re: Universal Control Remapper (UCR) - v0.1.11 19th Feb 2017
did you try enabling the vJoy stick, and if it appears as ID 1, change it to a different ID. Does ID 1 work with your stick then?
This is my usual setup (vJoy on ID1) and you never normally need to use ID1 as input, so now that you have gotten your sticks working, I would not worry about it. There are advantages to having vJoy on ID1.
This is my usual setup (vJoy on ID1) and you never normally need to use ID1 as input, so now that you have gotten your sticks working, I would not worry about it. There are advantages to having vJoy on ID1.
Re: Universal Control Remapper (UCR) - v0.1.11 19th Feb 2017
I have been having a play with Lexikos' CLR Interop which allows you to load C# DLLs, then instantiate classes from within the DLL.
I wrote a C# wrapper DLL for SlimDX.DirectInput which allows wrapping of DirectInput calls.
This will bring the following benefits over the current system:
Full 8 axis support (Currently we have 6)
Full 4 POV support (Currently we have 1)
Full 128 button support (Currently we have 32)
Native 16-Bit values with EXACT 32767 mid-point (Currently we have 0...100 floating point with middle being 49.9997)
At the moment, it is only polling, but if it is possible, I hope to implement event based.
See https://autohotkey.com/boards/viewtopic ... 09#p135309 for demo
Oh, and this technique is probably possible for RawInput etc too, so I could maybe do a similar thing for wrapping mouse delta input.
I wrote a C# wrapper DLL for SlimDX.DirectInput which allows wrapping of DirectInput calls.
This will bring the following benefits over the current system:
Full 8 axis support (Currently we have 6)
Full 4 POV support (Currently we have 1)
Full 128 button support (Currently we have 32)
Native 16-Bit values with EXACT 32767 mid-point (Currently we have 0...100 floating point with middle being 49.9997)
At the moment, it is only polling, but if it is possible, I hope to implement event based.
See https://autohotkey.com/boards/viewtopic ... 09#p135309 for demo
Oh, and this technique is probably possible for RawInput etc too, so I could maybe do a similar thing for wrapping mouse delta input.
Re: Universal Control Remapper (UCR) - v0.1.11 19th Feb 2017
Thank you for this great app.
At the moment I'm still running my own AHK script at the same time as this for one piece of functionality that it'd be really cool if you could add.
I have the dials on my X45 mapped so that they press keys as they pass thresholds in certain directions. I use this to open and close the 4 HUD elements in Elite Dangerous like this (the HUD elements are configured to work on continuous button presses in-game) :
* As the value passes from > 40 to <= 40 "b" is pressed ( to open HUD 2).
* As the value passes from > 20 to <= 20 "b" is released (to close HUD 2) and "a" is pressed (to open HUD 1)
* As the value passes from <= 20 to > 20 "a" is released (to close HUD 1) and "b" is pressed (to open HUD 2)
* As the value passes from <= 40 to > 40 "b" is released (to close HUD 2)
* ... And the same for the other HUD elements at values 60 and 80. So when the dial is between 40 and 60 no extra HUD elements are open.
I see you have the ability to map an axis to two buttons, and perhaps by combining this with splitting axis I guess the same might be possible? But IMO this would be very messy and it'd be really nice to have an easy way to do the above easily.
PS apologies I didn't read the whole thread to see if this was already addressed.
At the moment I'm still running my own AHK script at the same time as this for one piece of functionality that it'd be really cool if you could add.
I have the dials on my X45 mapped so that they press keys as they pass thresholds in certain directions. I use this to open and close the 4 HUD elements in Elite Dangerous like this (the HUD elements are configured to work on continuous button presses in-game) :
* As the value passes from > 40 to <= 40 "b" is pressed ( to open HUD 2).
* As the value passes from > 20 to <= 20 "b" is released (to close HUD 2) and "a" is pressed (to open HUD 1)
* As the value passes from <= 20 to > 20 "a" is released (to close HUD 1) and "b" is pressed (to open HUD 2)
* As the value passes from <= 40 to > 40 "b" is released (to close HUD 2)
* ... And the same for the other HUD elements at values 60 and 80. So when the dial is between 40 and 60 no extra HUD elements are open.
I see you have the ability to map an axis to two buttons, and perhaps by combining this with splitting axis I guess the same might be possible? But IMO this would be very messy and it'd be really nice to have an easy way to do the above easily.
PS apologies I didn't read the whole thread to see if this was already addressed.
Last edited by Tharg on 05 Mar 2017, 09:36, edited 1 time in total.
Re: Universal Control Remapper (UCR) - v0.1.11 19th Feb 2017
So you want an InputAxis as the input, and ?6? OutputButtons as the output?
And for each OutputButton, you want it to have a "band" where as it enters the band it presses the key, and as it leaves it, it releases the key?
This is something I would like to implement *properly* at some point, but by properly I mean a dynamic number of buttons (ie you can add any number of "bands" that you want).
That would probably take quite a lot of effort though - I could probably knock up a POC with a static number of bands quite easily.
And for each OutputButton, you want it to have a "band" where as it enters the band it presses the key, and as it leaves it, it releases the key?
This is something I would like to implement *properly* at some point, but by properly I mean a dynamic number of buttons (ie you can add any number of "bands" that you want).
That would probably take quite a lot of effort though - I could probably knock up a POC with a static number of bands quite easily.
Re: Universal Control Remapper (UCR) - v0.1.11 19th Feb 2017
Is this what you want?
Save this code as Plugins\User\AxisRangeToButtons.ahk
You can edit the code and change NumBands near the start to change how many bands you want, but unfortunately cannot define how many bands you want at run-time.
I suppose I could just add 10 bands or something - you can just leave bands unconfigured if you want.
Save this code as Plugins\User\AxisRangeToButtons.ahk
You can edit the code and change NumBands near the start to change how many bands you want, but unfortunately cannot define how many bands you want at run-time.
I suppose I could just add 10 bands or something - you can just leave bands unconfigured if you want.
Code: Select all
/*
Remaps a band on a physical joystick axis to bunch of button outputs
*/
class AxisRangeToButtons extends _UCR.Classes.Plugin {
Type := "Remapper (Axis Range To Buttons)"
Description := "Maps a band in a joystick axis input to a button output"
LastState := 0
NumBands := 5
CurrentBand := 0
; Set up the GUI to allow the user to select inputs and outputs
Init(){
iow := 125
Gui, Add, GroupBox, Center xm ym w240 h70 section, Input Axis
Gui, Add, Text, % "Center xs+5 yp+15 w" iow, Axis
Gui, Add, Text, % "Center x+5 w100 ys+15", Preview
this.AddControl("InputAxis", "InputAxis", 0, this.MyInputChangedState.Bind(this), "xs+5 yp+15")
this.AddControl("AxisPreview", "", 0, this.IOControls.InputAxis, "x+5 yp+5 w100", 50)
;~ Gui, Add, GroupBox, Center x255 ym w90 h70 section, Settings
;~ Gui, Add, Text, % "xs+5 yp+20", Invert
;~ this.AddControl("CheckBox", "Invert", 0, "xs+60 yp w25")
;~ Gui, Add, Text, % "xs+5 y+10", DeadZone
;~ this.AddControl("Edit", "Deadzone", 0, "xs+60 yp-3 w25", "0")
Loop % this.NumBands {
Gui, Add, Text, % "Center xm y+20", % "Band #" A_Index
this.AddControl("Edit", "Band" A_Index "Low", 0, "x+5 yp-3 w25")
Gui, Add, Text, x+5 yp+3, % " to "
this.AddControl("Edit", "Band" A_Index "High", 0, "x+5 yp-3 w25")
this.AddControl("OutputButton", "OB" A_Index, 0, "x+5 yp-10")
this.AddControl("ButtonPreview", "", 0, this.IOControls["OB" A_Index], "x+5 yp+5")
}
}
; The user moved the selected input axis. Manipulate the output buttons accordingly
MyInputChangedState(value){
in_band := 0
Loop % this.NumBands {
lo := this.GuiControls["Band" A_Index "Low"].Get()
hi := this.GuiControls["Band" A_Index "High"].Get()
if (value >= lo && value <= hi){
;OutputDebug % "UCR| axis is in band: " A_Index
in_band := A_Index
}
}
if (this.CurrentBand != in_band){
this.IOControls["OB" this.CurrentBand].Set(0)
if (in_band){
this.IOControls["OB" in_band].Set(1)
}
}
this.CurrentBand := in_band
}
}
Re: Universal Control Remapper (UCR) - v0.1.11 19th Feb 2017
Yeah this is exactly it. I want 4 buttons for my specific example, so at any time one of the 4 is pressed, or none of them is, depending where the dial is. I agree it'd be best to do it "properly" as you suggest - probably including the option for single button presses (instead of holding them) too.
I have a "workaround" with my script running at the same time so no need to do extra work for just this one user - but I'll eagerly keep an this thread for when / if its implemented in UCR and I can drop my extra script.
... Lol you replied again before I clicked submit on the above. Thanks v much, I'll give that a look.
I have a "workaround" with my script running at the same time so no need to do extra work for just this one user - but I'll eagerly keep an this thread for when / if its implemented in UCR and I can drop my extra script.
... Lol you replied again before I clicked submit on the above. Thanks v much, I'll give that a look.
Re: Universal Control Remapper (UCR) - v0.1.11 19th Feb 2017
Hi, i'm hopeing UCR can solve my issue but can't seem to find a way, maybe I'm missing it?
I'm looking to invert the axis of a second mouse, is this possible?
My setup: A virtual table top/TV embedded into a table. So I want one mouse on one side of the table as normal, and a second mouse on the opposite side with it's x and y axis reversed (as they are viewing windows upside down). I really don't need a separate cursor, just the axis changed for a second mouse. (Both mice are logitech 5 button mice)
I'm looking to invert the axis of a second mouse, is this possible?
My setup: A virtual table top/TV embedded into a table. So I want one mouse on one side of the table as normal, and a second mouse on the opposite side with it's x and y axis reversed (as they are viewing windows upside down). I really don't need a separate cursor, just the axis changed for a second mouse. (Both mice are logitech 5 button mice)
Return to “Gaming Scripts (v1)”
Who is online
Users browsing this forum: No registered users and 143 guests