Page 1 of 2

Mouse 4 and 5

Posted: 28 Feb 2010, 18:27
by Wisse
Hey

Ever since I started playing I used Mouse4 and Mouse5 (thumb buttons) on my Logitech MX510 for buildspacing. Buttons were bound by default, no interaction from my side.
That behavior somehow got changed in last 6 months (dunno when rly since I didn't play) with one of the new Spring revisions. I guess someone tempered with mouse code and just left out that function.

Simply binding those buttons in uikeys doesn't work and I hate using keyboard for the task (brackets are on lvl2 since it's Slovenian keyboard).

I guess not many ppl use mouse with 2 thumb buttons, but would it be too much to ask if someone could look into that? Those buttons are pretty standard, since they work in most Windows applications by default (mostly forward/back).
Best possible solution would be to make buttons bindable via uikeys so guys with one thumb button (many mice have one) can assign something to it.

Re: Mouse 4 and 5

Posted: 28 Feb 2010, 19:55
by Jazcash
Well I use a Logitech MX 518 and it has some nice software that comes with it to bind keys to any button on it. So if you have software with your model, just bind a mex combo to your UI keys and then also bind that combo to your mouse.

Re: Mouse 4 and 5

Posted: 28 Feb 2010, 20:04
by FLOZi
I brought this up with a particular dev and got a face full of bleating about it. There is some widget somewhere which you have to edit to add your mouse buttons back in because the default hardcoded bindings were removed for some reason that was never explained.

Re: Mouse 4 and 5

Posted: 28 Feb 2010, 20:20
by Wisse
There's a widget? Well I'll take anything if devs aren't rdy to address this.
JAZCASH wrote:Well I use a Logitech MX 518 and it has some nice software that comes with it to bind keys to any button on it. So if you have software with your model, just bind a mex combo to your UI keys and then also bind that combo to your mouse.
I don't wanna lose button's default function tho. I have few bound to imitate keystrokes, but they didn't have any useful function before unlike back/forward on thumb buttons.
Also my mouse doesn't support profiles like some probably do.

Re: Mouse 4 and 5

Posted: 28 Feb 2010, 23:59
by Auswaschbar

Re: Mouse 4 and 5

Posted: 01 Mar 2010, 01:49
by Wisse
OK, I've somehow managed to modify your widget to change buildspacing, BUT there's a problem.
Behavior still isn't the same, because it won't read buttons and change spacing while I hold mouse1 (dragging line of buildings).

I'm not good enough in lua (actually I don't know anything about it) to bypass this problem, so help would be appreciated.

Plan is to replicate old default behavior, when I was able to change spacing on the fly, while drawing line of buildings.

Thx

Re: Mouse 4 and 5

Posted: 01 Mar 2010, 08:42
by Beherith
Paste the relevant part of your uikeys.txt pls.

Re: Mouse 4 and 5

Posted: 01 Mar 2010, 09:26
by Wisse

Code: Select all

unbind any+c controlunit
unbind c controlunit

unbindkeyset x
unbind Any+x  buildspacing dec
unbind x  buildspacing dec
unbindaction buildspacing dec

unbind any+y onoff
unbind y onoff

unbind any+v onoff
unbind v onoff

unbind any+b debug
unbind b debug

unbind q  groupselect
unbind q  groupadd
unbind Shift+q  groupclear

bind y buildunit_armmex
bind shift+y buildunit_armmex
bind y buildunit_armamex
bind shift+y buildunit_armamex
bind y buildunit_armmoho
bind shift+y buildunit_armmoho
bind y buildunit_cormex
bind shift+y buildunit_cormex
bind y buildunit_corexp
bind shift+y buildunit_corexp
bind y buildunit_cormoho
bind shift+y buildunit_cormoho
bind y buildunit_cormexp
bind shift+y buildunit_cormexp

bind x buildunit_armsolar
bind shift+x buildunit_armsolar
bind x buildunit_armwin
bind shift+x buildunit_armwin
bind x buildunit_armadvsol
bind shift+x buildunit_armadvsol
bind x buildunit_armfus
bind shift+x buildunit_armfus
bind x buildunit_armmmkr
bind shift+x buildunit_armmmkr
bind x buildunit_corsolar
bind shift+x buildunit_corsolar
bind x buildunit_corwin
bind shift+x buildunit_corwin
bind x buildunit_coradvsol
bind shift+x buildunit_coradvsol
bind x buildunit_corfus
bind shift+x buildunit_corfus
bind x buildunit_cormmkr
bind shift+x buildunit_cormmkr

bind c buildunit_armllt
bind shift+c buildunit_armllt
bind c buildunit_armrad
bind shift+c buildunit_armrad
bind c buildunit_armrl
bind shift+c buildunit_armrl
bind c buildunit_armpb
bind shift+c buildunit_armpb
bind c buildunit_armflak
bind shift+c buildunit_armflak
bind c buildunit_corllt
bind shift+c buildunit_corllt
bind c buildunit_corrad
bind shift+c buildunit_corrad
bind c buildunit_corrl
bind shift+c buildunit_corrl
bind c buildunit_corvipe
bind shift+c buildunit_corvipe
bind c buildunit_corflak
bind shift+c buildunit_corflak

bind v buildunit_armlab
bind shift+v buildunit_armlab
bind v buildunit_armvp
bind shift+v buildunit_armvp
bind v buildunit_armnanotc
bind shift+v buildunit_armnanotc
bind v buildunit_corlab
bind shift+v buildunit_corlab
bind v buildunit_corvp
bind shift+v buildunit_corvp
bind v buildunit_cornanotc
bind shift+v buildunit_cornanotc

bind b debug

bind q movestate 0
bind shift+q movestate 1

bind o luaui reload

//bind              mouse4  buildspacing inc
//bind              mouse5  buildspacing dec
No idea how this is gonna help -.-

Last two commented commands are from testings, when I tried to see if I can simply bind those buttons.

Re: Mouse 4 and 5

Posted: 02 Mar 2010, 08:09
by Jazcash
Mine are pretty messy but I lubs them <3

Code: Select all

//------------------------------------------------------------------
//Beherith's base keybinds sparkled with Wisse magic and Jazcash love.
//------------------------------------------------------------------

unbind          any+f12  screenshot
bind            any+f12  screenshot png
bind            ctrl+f12 screenshot jpg

unbind c controlunit
unbind any+c controlunit

unbind n 
unbind any+n

bind o controlunit
bind any+o controlunit

bind Alt+Ctrl+Shift+f10 createvideo

unbind t
unbind any+t

bind t areamex
bind shift+t areamex
bind any+t areamex

unbindkeyset x
unbind Any+x  buildspacing dec
unbind x  buildspacing dec
unbindaction buildspacing dec

unbind any+z buildspacing inc
unbind z buildspacing inc
unbindaction buildspacing inc

unbind any+v onoff
unbind v onoff

unbind any+b debug
unbind b debug

unbind w wait
unbind shift+w wait
unbind shift+w wait queued

bind any+q buildspacing inc
bind any+w buildspacing dec

bind q capture

bind w wait

//MEXES:

//t1 mexes:

bind z buildunit_armmex
bind shift+z buildunit_armmex
bind z buildunit_arm_metal_extractor
bind shift+z buildunit_arm_metal_extractor
bind z buildunit_core_metal_extractor
bind shift+z buildunit_core_metal_extractor
bind z buildunit_cormex
bind shift+z buildunit_cormex
bind z buildunit_armuwmex
bind shift+z buildunit_armuwmex
bind z buildunit_coruwmex
bind shift+z buildunit_coruwmex

//t2 mexes:
bind z buildunit_armmoho
bind shift+z buildunit_armmoho
bind z buildunit_cormoho
bind shift+z buildunit_cormoho
bind z buildunit_cormexp
bind shift+z buildunit_cormexp

//ENERGY:

//solar and wind:
bind x buildunit_armsolar
bind shift+x buildunit_armsolar
bind x buildunit_armwin
bind shift+x buildunit_armwin
bind x buildunit_corsolar
bind shift+x buildunit_corsolar
bind x buildunit_corwin
bind shift+x buildunit_corwin

//adv solar:

bind x buildunit_armadvsol
bind shift+x buildunit_armadvsol
bind x buildunit_coradvsol
bind shift+x buildunit_coradvsol

//fusion, moho metal maker:

bind x buildunit_armfus
bind shift+x buildunit_armfus
bind x buildunit_armmmkr
bind shift+x buildunit_armmmkr
bind x buildunit_corfus
bind shift+x buildunit_corfus
bind x buildunit_cormmkr
bind shift+x buildunit_cormmkr


//DEFENCE AND RADAR

unbind any+c controlunit
unbind c controlunit

bind c buildunit_armllt
bind shift+c buildunit_armllt
bind c buildunit_armrad
bind shift+c buildunit_armrad
bind c buildunit_corllt
bind shift+c buildunit_corllt
bind c buildunit_corrad
bind shift+c buildunit_corrad

//light AA:
bind c buildunit_corrl
bind shift+c buildunit_corrl
bind c buildunit_armrl
bind shift+c buildunit_armrl

//t2: viper and pitbull; flak:


bind c buildunit_armpb
bind shift+c buildunit_armpb
bind c buildunit_armflak
bind shift+c buildunit_armflak
bind c buildunit_corvipe
bind shift+c buildunit_corvipe
bind c buildunit_corflak
bind shift+c buildunit_corflak

//LABS AND NANOS:

bind v buildunit_armnanotc
bind shift+v buildunit_armnanotc
bind v buildunit_armlab
bind shift+v buildunit_armlab
bind v buildunit_armvp
bind shift+v buildunit_armvp

bind v buildunit_cornanotc
bind shift+v buildunit_cornanotc
bind v buildunit_corlab
bind shift+v buildunit_corlab
bind v buildunit_corvp
bind shift+v buildunit_corvp

Re: Mouse 4 and 5

Posted: 02 Mar 2010, 11:16
by aegis
if you're running windows, simple autohotkey script can do it:

Code: Select all

XButton1::
IfWinActive, Spring
{
    SendInput, [
}
return

XButton2::
IfWinActive, Spring
{
    SendInput, ]
}
return

Re: Mouse 4 and 5

Posted: 02 Mar 2010, 12:48
by Wisse
I'm sry, but most of you speak some language I don't quite understand. Would you be so kind and elaborate on "autohotkey script". I have no idea where to stick that.

Re: Mouse 4 and 5

Posted: 02 Mar 2010, 13:31
by aegis
use the googles

http://www.autohotkey.com/

install, save the code I posted as something.ahk, then double click it

I can't verify whether it works, since I only have three mouse buttons.

Re: Mouse 4 and 5

Posted: 02 Mar 2010, 22:31
by Master-Athmos
So I'm not the only one surprised by this...
If not too much of a hassle I also would like to reinclude the binding to those mouse buttons in terms of a native Spring solution. I'll try that autohotkey thing though...

Re: Mouse 4 and 5

Posted: 02 Mar 2010, 22:40
by Master-Athmos
So I tried it with Autohotkey. It works by principle but Spring doesn't seem to get it. Nothing happens about the spacing but when opening the chat I can place some [ and ] there by clicking...

Re: Mouse 4 and 5

Posted: 07 Mar 2010, 21:29
by Master-Athmos
Did anyone find a solution for this? Doing the spacing via keyboard commands is just wrong for me...

Re: Mouse 4 and 5

Posted: 08 Mar 2010, 01:16
by aegis
I don't have 4-5 buttons so I can't test it <_<

Re: Mouse 4 and 5

Posted: 08 Mar 2010, 05:00
by SinbadEV
My guess is that autohotkey is sending the character as keyboard input instead of sending the keypress (which would be what spring is looking for...) likely just need to look into auto-hotkey a little deeper (maybe try surrounding them in {} or using a different sendmode?)

Re: Mouse 4 and 5

Posted: 08 Mar 2010, 05:08
by aegis
SendPlay?

Re: Mouse 4 and 5

Posted: 08 Mar 2010, 06:28
by FLOZi
Third party software is not a solution.

/me awaits Auswaschbars' response.

Re: Mouse 4 and 5

Posted: 08 Mar 2010, 14:00
by Auswaschbar
FLOZi wrote:/me awaits Auswaschbars' response.
Was bug. Got Fixed. (Widget now works)