Jump to content
Corsair Community

AutoHotkey "Hard Macro" macro tool for M60 and M90


Laufer

Recommended Posts

Right, sorry I was vague. I did exactly what you told me to do, added a macro with the pencil tool, copied the code in, saved and clicked launch, switched to CSGO and tried using button 7, did not even perform LMB, not even on one click or click and hold.

Ok, lets see if problem with macro code or with CSGO (some games don't work with Autohotkey). Try this one:

1) Create new macro for buttons 7, for example:

MacroTest:
Send Hello
return

2) Clear Application box in HardMacro and press Launch.

3) Open Windows Notepad or Word and press button 7.

 

If you see text "Hello" appear in text box - then macro is ok. Next step - try to press button 7 while in game CSGO. Click in chat box so cursor start to blink and press button 7. See any "Hello" text?

 

Also make sure that name of macro same as its filename. For example in sample code above name is MacroTest and its filename is MacroTest.ahk. By default they are same but weird things may happen.

Link to comment
Share on other sites

  • Replies 155
  • Created
  • Last Reply
I did exactly what you said - but no "Hello" appeared in both Word or Notepad. You said that I didn't need to reassign any of the buttons in the Corsair software, just saying I left buttons 6 and 7 as -No Function- buttons.

And thats must be a problem. I've said "don't reassign" meaning that you leave them as default Forward and Backward. Try to set buttons 6 and 7 to "Forward" and "Backward" accordingly. And repeat "Hello"-solution.

Link to comment
Share on other sites

And thats must be a problem. I've said "don't reassign" meaning that you leave them as default Forward and Backward. Try to set buttons 6 and 7 to "Forward" and "Backward" accordingly. And repeat "Hello"-solution.

 

Ok so I've set them back to default, forward and backward. I tried the "Hello" solution and it did not output "Hello", it just did its default function of going forward in the browser.

Link to comment
Share on other sites

Ok so I've set them back to default, forward and backward. I tried the "Hello" solution and it did not output "Hello", it just did its default function of going forward in the browser.

Ok. Close HardMacro (see "H" icon in system tray). Create new script and launch it:

XButton1::
Send Hello
return

This simple code will work without HardMacro - just double click it and try to push button 7 in notepad.

Link to comment
Share on other sites

Yes! it finally works! it does output "Hello" this time. It also works in CSGO. Now how do I get my click and hold to spam LMB?

If this is only thing you want its easier for you to launch this simple macro:

For Button 6

*$XButton2::
while GetKeyState("XButton2", "P")
{
	Send {LButton down}
	Sleep, 50
	Send {LButton up}
	Sleep, 50
}
return

For Button 7

*$XButton1::
while GetKeyState("XButton1", "P")
{
	Send {LButton down}
	Sleep, 50
	Send {LButton up}
	Sleep, 50
}
return

Link to comment
Share on other sites

That works thank you very much. And what if I would like to have this AND be able to have single key press for x on the sniper button, button 8.

It depends if you assiged button 8 to F15 as described in my instructions (see first post of that thread). Maybe its easier to use Corsair software to assign single keystroke "X".

Link to comment
Share on other sites

It depends if you assiged button 8 to F15 as described in my instructions (see first post of that thread). Maybe its easier to use Corsair software to assign single keystroke "X".

 

Oh right, so I wouldn't need to reassign it. For the time being, I'll leave you alone now:laughing:

Thank you very much.

Link to comment
Share on other sites

  • 1 month later...

Hi Laufer,

 

I would like to create a continuous left click macro and assign it to button 15 on the M90 mouse.

 

Would you be able to assist in creating this?

It's for Diablo 3, and possibly someone else has a similar setup and could advise?

 

Thanks,

Scabs

 

EDIT: Apologies i should have read the entire thread..

 

I have found this piece of code:

***************************************************************************************

; Hold Mouse Button for LMB spam

LMB_Spam:

Key := % A_ThisHotKey ; check if this hot key still pressed

StringReplace, Key, Key, *$, , All

while GetKeyState(Key, "P") ; while hot key pressed do...

{

Send {LButton down} ; press LMB

Sleep, 50 ; wait 50 ms

Send {LButton up} ; release LMB

Sleep, 50 ; wait 50 ms

}

return

***************************************************************************************

 

Do i simply need to add this to button 15 of your software?

If i would like no latency between presses, do i just change the speed to 0?

 

Thanks in advance for your help :)

Link to comment
Share on other sites

Hi scabs!

 

I guess you want something like this:

Button 15 toggles infinite continuous LMB clicks with 50ms pause between them. So you can turn LMB spam on or off. Right?

 

EDIT: You right if this is what you want - LMB spam while holding button 15.

Latency of 50ms is very small so LMB spam will be fast enough.

Link to comment
Share on other sites

Hi scabs!

 

I guess you want something like this:

Button 15 toggles infinite continuous LMB clicks with 50ms pause between them. So you can turn LMB spam on or off. Right?

 

EDIT: You right if this is what you want - LMB spam while holding button 15.

Latency of 50ms is very small so LMB spam will be fast enough.

 

Awesome, thanks for the quick reply :)

Do i need to do anything else, eg: on the corsair software? Or just add this to the button on your software and a for a way?

Link to comment
Share on other sites

Awesome, thanks for the quick reply :)

Do i need to do anything else, eg: on the corsair software? Or just add this to the button on your software and a for a way?

Yep, thats right :biggrin:

But if something will go wrong - refer to first post of this thread. You will find solution of 99% problems. Feel free to ask me any questions.

Link to comment
Share on other sites

Yep, thats right :biggrin:

But if something will go wrong - refer to first post of this thread. You will find solution of 99% problems. Feel free to ask me any questions.

 

Great stuff. Thanks so much!

Link to comment
Share on other sites

Hmmm, i can't get the script to work...

I create a new script and past the code in it, i name the script the same as what is in the code. When i click launch, the button does not work :(

1) Did you set mouse to Hardware playback mode?

2) Did you import M60_Default.xml profile in your mouse via Corsair software?

3) Past here your script, please.

Link to comment
Share on other sites

1) Did you set mouse to Hardware playback mode?

2) Did you import M60_Default.xml profile in your mouse via Corsair software?

3) Past here your script, please.

 

Hi Laufer,

 

1) Mouse set to hardware playback mode.

2) I've imported the M90 profile.

3) Script below

 

; Hold Mouse Button for LMB spam

LMB_Spam:

Key := % A_ThisHotKey ; check if this hot key still pressed

StringReplace, Key, Key, *$, , All

while GetKeyState(Key, "P") ; while hot key pressed do...

{

Send {LButton down} ; press LMB

Sleep, 50 ; wait 50 ms

Send {LButton up} ; release LMB

Sleep, 50 ; wait 50 ms

}

return

 

Thanks so much for the assistance.

Link to comment
Share on other sites

What did you typed in Application field? Try to clear it and test script in Windows.

 

For testing purpose you may replace your script with that:

LMB_Spam:
Key := % A_ThisHotKey ; check if this hot key still pressed
StringReplace, Key, Key, *$, , All
while GetKeyState(Key, "P") ; while hot key pressed do... 
{
Send, Test
Sleep, 50 ; wait 50 ms
}
return

 

Set cursor in Notepad window and press mouse button.

Link to comment
Share on other sites

What did you typed in Application field? Try to clear it and test script in Windows.

 

For testing purpose you may replace your script with that:

LMB_Spam:
Key := % A_ThisHotKey ; check if this hot key still pressed
StringReplace, Key, Key, *$, , All
while GetKeyState(Key, "P") ; while hot key pressed do... 
{
Send, Test
Sleep, 50 ; wait 50 ms
}
return

 

Set cursor in Notepad window and press mouse button.

 

 

I've tested this on Key 15 and nothing is happening.

 

I've tested this by adding this script to the normal left button, and it works

Link to comment
Share on other sites

I've tested this on Key 15 and nothing is happening.

 

I've tested this by adding this script to the normal left button, and it works

Seems like profile not set up properly. Open Corsair software, go on tab "Assign buttons" and click on picture of button 15 with mouse cursor. What do you see in "Assign button" field?

There should be something like this (but with Key: F22):

http://imagizer.imageshack.us/a/img594/4412/f15v10.png

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...