• Log InLog In
  • Register
Liquid`
Team Liquid Liquipedia
EDT 16:45
CEST 22:45
KST 05:45
  • Home
  • Forum
  • Calendar
  • Streams
  • Liquipedia
  • Features
  • Store
  • EPT
  • TL+
  • StarCraft 2
  • Brood War
  • Smash
  • Heroes
  • Counter-Strike
  • Overwatch
  • Liquibet
  • Fantasy StarCraft
  • TLPD
  • StarCraft 2
  • Brood War
  • Blogs
Forum Sidebar
Events/Features
News
Featured News
[ASL20] Ro8 Preview Pt2: Holding On8Maestros of the Game: Live Finals Preview (RO4)5TL.net Map Contest #21 - Finalists4Team TLMC #5: Vote to Decide Ladder Maps!0[ASL20] Ro8 Preview Pt1: Mile High15
Community News
PartinG joins SteamerZone, returns to SC2 competition(?)125.0.15 Balance Patch Notes (Live version)76$2,500 WardiTV TL Map Contest Tournament 151Stellar Fest: StarCraft II returns to Canada11Weekly Cups (Sept 22-28): MaxPax double, Zerg wins, PTR12
StarCraft 2
General
PartinG joins SteamerZone, returns to SC2 competition(?) 5.0.15 Balance Patch Notes (Live version) ZvT - Army Composition - Slow Lings + Fast Banes Stellar Fest: StarCraft II returns to Canada Had to smile :)
Tourneys
$2,500 WardiTV TL Map Contest Tournament 15 Stellar Fest Sparkling Tuna Cup - Weekly Open Tournament LANified! 37: Groundswell, BYOC LAN, Nov 28-30 2025 Maestros of The Game—$20k event w/ live finals in Paris
Strategy
Custom Maps
External Content
Mutation # 493 Quick Killers Mutation # 492 Get Out More Mutation # 491 Night Drive Mutation # 490 Masters of Midnight
Brood War
General
Thoughts on rarely used units Question regarding recent ASL Bisu vs Larva game RepMastered™: replay sharing and analyzer site [ASL20] Ask the mapmakers — Drop your questions BW General Discussion
Tourneys
[Megathread] Daily Proleagues [ASL20] Ro8 Day 4 [ASL20] Ro8 Day 3 Small VOD Thread 2.0
Strategy
Current Meta I am doing this better than progamers do. Simple Questions, Simple Answers Cliff Jump Revisited (1 in a 1000 strategy)
Other Games
General Games
Dawn of War IV Stormgate/Frost Giant Megathread Nintendo Switch Thread Path of Exile Liquipedia App: Now Covering SC2 and Brood War!
Dota 2
Official 'what is Dota anymore' discussion LiquidDota to reintegrate into TL.net
League of Legends
Heroes of the Storm
Simple Questions, Simple Answers Heroes of the Storm 2.0
Hearthstone
Deck construction bug Heroes of StarCraft mini-set
TL Mafia
TL Mafia Community Thread
Community
General
US Politics Mega-thread The Games Industry And ATVI Russo-Ukrainian War Thread Things Aren’t Peaceful in Palestine Canadian Politics Mega-thread
Fan Clubs
The herO Fan Club! The Happy Fan Club!
Media & Entertainment
Anime Discussion Thread Movie Discussion! [Manga] One Piece
Sports
2024 - 2026 Football Thread MLB/Baseball 2023 Formula 1 Discussion TeamLiquid Health and Fitness Initiative For 2023
World Cup 2022
Tech Support
SC2 Client Relocalization [Change SC2 Language] Linksys AE2500 USB WIFI keeps disconnecting Computer Build, Upgrade & Buying Resource Thread
TL Community
Recent Gifted Posts The Automated Ban List BarCraft in Tokyo Japan for ASL Season5 Final
Blogs
Mental Health In Esports: Wo…
TrAiDoS
[AI] Sorry, Chill, My Bad :…
Peanutsc
Try to reverse getting fired …
Garnet
[ASL20] Players bad at pi…
pullarius1
Customize Sidebar...

Website Feedback

Closed Threads



Active: 1388 users

DeathAdder double clicking problem - Page 2

Forum Index > Tech Support
Post a Reply
Prev 1 2 All
tathagatagarbha
Profile Joined December 2012
Germany3 Posts
December 07 2012 14:01 GMT
#21
i had the doubleclick-problem with some of my mice as well and i fixed the hardware with software
just use the following auto-hotkey script (you can put in autostart if you want to)

+ Show Spoiler +

/*
** Buggy-Mouse.ahk - Fix a buggy mouse. Stop it from double-clicking when you try to single-click.
**
** Updated: Sat, Aug 27, 2011 --- 8/27/11, 2:38:19pm EDT
** Keywords: mouse double clicks when i click once
** Keywords: mouse double clicks on its own
** Keywords: mouse double clicks with one click
** Keywords: mouse double clicks on single click
** Keywords: mouse double clicks on one click
** Keywords: mouse double-clicking when you single-click
** Keywords: set mouse minimum double click speed
** Location: r.secsrv.net/AutoHotkey/Scripts/Buggy-Mouse
**
** Author: JSLover - r.secsrv.net/JSLover - r.secsrv.net/JSLoverAHK
*/
#SingleInstance force
OnExit, OnExit

;// *** Settings ***

Log=0

;// Minimum double-click time. Any lower & it will be blocked (as being inhumanly fast).
DoubleClickMin_ms:=80

;// *** DISABLED *** ;// Minimum click after mouse-up time. Any lower & it will be blocked (as being inhumanly fast).
;// *** DISABLED *** ClickAfterMouseUpMin_ms:=100

;// *** /Settings ***

Gosub, OnStartup

;// *** Build Tray Menu ***

Text_ClicksBlocked=Clicks Blocked
Text_Debug=Debug
Text_Debug_OnlyBlocked=Debug (only blocked)

Menu, Tray, Add, %Text_ClicksBlocked%, BuggyMouse_MenuSelect_ClicksBlocked
Text_ClicksBlocked_MenuCurrent:=Text_ClicksBlocked
Menu, Tray, Default, %Text_ClicksBlocked%
Menu, Tray, Add, %Text_Debug%, BuggyMouse_MenuSelect_Debug
Menu, Tray, Add, %Text_Debug_OnlyBlocked%, BuggyMouse_MenuSelect_Debug_OnlyBlocked
Menu, Tray, Disable, %Text_Debug_OnlyBlocked%
Menu, Tray, Add
Menu, Tray, NoStandard
Menu, Tray, Standard

;// *** /Build Tray Menu ***

;//BuggyMouse_Debug:=1
;//BuggyMouse_Debug_OnlyBlocked:=1
Gosub, BuggyMouse_MenuSelect_Debug
Gosub, BuggyMouse_MenuSelect_Debug_OnlyBlocked
return

OnStartup:
logdir=%A_ScriptDir%
logfilename=%A_ScriptName%.log
logfile=%logdir%\%logfilename%

time:=time()
logmsg=
(LTrim
%A_ScriptName% Started`t`t%time%
` Status`t`tUpDn`t Key`t`t`tReason`t`t`t`tWindow`n
)
log(logmsg)
return

OnExit:
time:=time()
logmsg=
(LTrim
%A_ScriptName% Exited`t`t%time%`n`n
)
log(logmsg)
ExitApp

LButton::
MButton::
RButton::
log_key:="Down`t" A_ThisHotkey "`t"
Critical
di++
TimeSinceLastMouseDown:=A_TickCount-LastMouseDown_ts
;//TimeSinceLastMouseUp:=A_TickCount-LastMouseUp_ts
DoubleClickTooFast:=TimeSinceLastMouseDown<=DoubleClickMin_ms
;// *** DISABLED *** ClickAfterMouseUpTooSoon:=(ClickAfterMouseUpMin_ms!="" && TimeSinceLastMouseUp<=ClickAfterMouseUpMin_ms)
;//if ((A_ThisHotkey==LastMouseDown && DoubleClickTooFast) || ClickAfterMouseUpTooSoon) {
if (A_ThisHotkey==LastMouseDown && (DoubleClickTooFast || ClickAfterMouseUpTooSoon)) {
;//if (A_TimeSincePriorHotkey<=DoubleClickMin_ms) {
reason:=DoubleClickTooFast ? "DoubleClickTooFast" "(" TimeSinceLastMouseDown ")" "(" DoubleClickMin_ms ")"
: ClickAfterMouseUpTooSoon ? "ClickAfterMouseUpTooSoon" "(" TimeSinceLastMouseUp ")" "(" ClickAfterMouseUpMin_ms ")"
: "Unknown"
msg=`nblocked (%reason%)
blockeddown:=1
BlockedCount_Down++
A_ThisHotkeyVarSafe:=RegExReplace(A_ThisHotkey, "i)[^a-z0-9_]")
BlockedCount_%A_ThisHotkeyVarSafe%++
Gosub, BuggyMouse_UpdateStatus_ClicksBlocked

log_action:="BLOCKED`t"
} else {
reason:=""
Send, {%A_ThisHotkey% DownTemp}
msg=`nSent, {%A_ThisHotkey% DownTemp}`n`n
(LTrim C
if (%A_ThisHotkey%==%LastMouseDown% && (%DoubleClickTooFast% || %ClickAfterMouseUpTooSoon%))
)

log_action:="`tallowed"
}
BuggyMouse_DebugMsg_down=%di%: %A_ThisHotkey%(%TimeSinceLastMouseDown%)%LastMouseDown%%msg%
msg=
Gosub, BuggyMouse_Debug
LastMouseDown:=A_ThisHotkey
LastMouseDown_ts:=A_TickCount

wininfo:=WinGetInfo("a")
log(log_action "`t`t" log_key "`t`t" reason "`t`t`t`t`t" wininfo "`n")
return

LButton up::
MButton up::
RButton up::
log_key:=" Up `t" A_ThisHotkey
Critical
ui++
TimeSinceLastMouseUp:=A_TickCount-LastMouseUp_ts
;//if (A_ThisHotkey=A_PriorHotkey && A_TimeSincePriorHotkey<=DoubleClickMin_ms) {
;//if (A_ThisHotkey=LastMouseUp && A_TimeSincePriorHotkey<=DoubleClickMin_ms) {
if (blockeddown) {
msg=`nblocked
blockedup:=1
BlockedCount_Up++
A_ThisHotkeyVarSafe:=RegExReplace(A_ThisHotkey, "i)[^a-z0-9_]")
BlockedCount_%A_ThisHotkeyVarSafe%++
Gosub, BuggyMouse_UpdateStatus_ClicksBlocked

log_action:="BLOCKED`t"
} else {
Send, {%A_ThisHotkey%}
msg=`nSent, {%A_ThisHotkey%}
log_action:="`tallowed"
}
;//if (BuggyMouse_Debug) {
BuggyMouse_DebugMsg_up=%ui%: %A_ThisHotkey%(%TimeSinceLastMouseUp%)%LastMouseUp%%msg%
msg=
Gosub, BuggyMouse_Debug
;//}
blockeddown=
blockedup=
LastMouseUp:=A_ThisHotkey
LastMouseUp_ts:=A_TickCount

wininfo:=WinGetInfo("a")
log(log_action "`t`t" log_key "`t`t" reason "`t`t`t`t`t" wininfo "`n")
return

BuggyMouse_Debug_ShowLastMsg:
;//BuggyMouse_Debug_ShowLastMsg=1
BuggyMouse_Debug:

return

BuggyMouse_UpdateStatus_ClicksBlocked:
BlockedCount_Total:=BlockedCount_Down+BlockedCount_Up
Text_ClicksBlocked_MenuNew=%Text_ClicksBlocked%: %BlockedCount_Total%
Menu, Tray, Rename, %Text_ClicksBlocked_MenuCurrent%, %Text_ClicksBlocked_MenuNew%
Text_ClicksBlocked_MenuCurrent:=Text_ClicksBlocked_MenuNew
Menu, Tray, Tip, %Text_ClicksBlocked_MenuCurrent% - %A_ScriptName%
return

BuggyMouse_MenuSelect_ClicksBlocked:
msgbox, 64, ,
(LTrim C
%Text_ClicksBlocked_MenuCurrent%

Down(%BlockedCount_Down%)
Up(%BlockedCount_Up%)

LButton(%BlockedCount_LButton%)
MButton(%BlockedCount_MButton%)
RButton(%BlockedCount_RButton%)

LButton up(%BlockedCount_LButtonup%)
MButton up(%BlockedCount_MButtonup%)
RButton up(%BlockedCount_RButtonup%)
)
return

BuggyMouse_MenuSelect_Debug:
BuggyMouse_Debug:=!BuggyMouse_Debug
Menu, Tray, ToggleCheck, %Text_Debug%
Menu, Tray, ToggleEnable, %Text_Debug_OnlyBlocked%
Tooltip
return

BuggyMouse_MenuSelect_Debug_OnlyBlocked:
BuggyMouse_Debug_OnlyBlocked:=!BuggyMouse_Debug_OnlyBlocked
Menu, Tray, ToggleCheck, %Text_Debug_OnlyBlocked%
Tooltip
return

log(p_msg, p_file="") {
Global Log, logfile
if (!Log) {
return
}
if (p_file="") {
p_file:=logfile
}
FileAppend, %p_msg%, %p_file%
}

time() {
FormatTime, time, L1033, ddd, MMM d, yyyy --- M/d/yy h:mm:sstt
return time
}

WinGetInfo(p_win, ByRef r_win_title="", ByRef r_win_class="") {
WinGetTitle, win_title, %p_win%
WinGetClass, win_class, %p_win%

r_win_title:=(win_title ? win_title:"<no-title-info>")
r_win_class:=(win_class ? win_class:"<no-class-info>")

;//wininfo:=(win_title ? win_title:"<no-title-info>") " - " (win_class ? win_class:"<no-class-info>")
wininfo:=(win_class ? win_class:"<no-class-info>") ": " (win_title ? win_title:"<no-title-info>")
return wininfo
}

#ScrollLock::log("*** PROBLEM ***`n")
^+#!F8::Gosub, BuggyMouse_Debug_ShowLastMsg
^+#!F9::Suspend
^+#!F12::ExitApp
;//*F12::ExitApp
;//F11::
;//toggle:=!toggle
;//if (toggle) {
;// Hotkey, *F12, Off
;//} else {
;// Hotkey, *F12, On
;//}
;//return

/* ;// **************************** Changelog / Version History ****************************
**
** Created: Fri, Apr 11, 2008 --- 4/11/08, 11:19:19am
** Modified: Sat, Apr 12, 2008 --- 4/12/08, 5:38:19am
** Modified: Sun, Jul 10, 2011 --- 7/10/11, 3:19:19am EDT
** * Added blocking of "mouse down too soon after last mouse up"
** Modified: Wed, Jul 20, 2011 --- 7/20/11, 1:19:19pm EDT
** Modified: Thu, Aug 25, 2011 --- 8/25/11, 1:19:19am EDT
** * Temporarily disabled "mouse down too soon after last mouse up" blocking, until I get it working.
** Modified: Thu, Aug 25, 2011 --- 8/25/11, 2:38:19am EDT
** * Updated Keywords for search engines
** Modified: Sat, Aug 27, 2011 --- 8/27/11, 7:19:19am EDT
** * Added Logging
** Modified: Sat, Aug 27, 2011 --- 8/27/11, 2:38:19pm EDT
** * Added Window Info to log
**
*/ ;// **************************** /Changelog / Version History ****************************


"DoubleClickMin_ms:=80"
you can change the time between blocked clicks here

all credits to the author!
imagine peace | shameless plug: twitch.tv/tathagatagarbha - youtube.com/user/satoriSC
TurboMaN
Profile Joined October 2005
Germany925 Posts
December 07 2012 17:31 GMT
#22
I have had this problem too.
Well I had 2 Razer Deathadder in about also 3 Razer Abyssus in the next years. 2 Deathadders got crashed when I was playing SCBW and 2 out of 3 Abyssus in SC2. It was always the same problem: Broken left mouse button. I think one in a year was standard for me, though I didn't hammer on the buttons, I was just clicking fast. Before the Deathadder I had two Razer Copperheads which had also a Razer-known problem: cable-break.
However my last Abysuss is still working but I mainly use a Steelseries Kana now, because I got it for free and it has a nice grip. Razer makes good mice, but unfortunately they also break very fast.
IPS.Blue
Profile Joined January 2004
Germany309 Posts
December 08 2012 11:52 GMT
#23
On December 07 2012 23:01 tathagatagarbha wrote:
i had the doubleclick-problem with some of my mice as well and i fixed the hardware with software
just use the following auto-hotkey script (you can put in autostart if you want to)

+ Show Spoiler +

/*
** Buggy-Mouse.ahk - Fix a buggy mouse. Stop it from double-clicking when you try to single-click.
**
** Updated: Sat, Aug 27, 2011 --- 8/27/11, 2:38:19pm EDT
** Keywords: mouse double clicks when i click once
** Keywords: mouse double clicks on its own
** Keywords: mouse double clicks with one click
** Keywords: mouse double clicks on single click
** Keywords: mouse double clicks on one click
** Keywords: mouse double-clicking when you single-click
** Keywords: set mouse minimum double click speed
** Location: r.secsrv.net/AutoHotkey/Scripts/Buggy-Mouse
**
** Author: JSLover - r.secsrv.net/JSLover - r.secsrv.net/JSLoverAHK
*/
#SingleInstance force
OnExit, OnExit

;// *** Settings ***

Log=0

;// Minimum double-click time. Any lower & it will be blocked (as being inhumanly fast).
DoubleClickMin_ms:=80

;// *** DISABLED *** ;// Minimum click after mouse-up time. Any lower & it will be blocked (as being inhumanly fast).
;// *** DISABLED *** ClickAfterMouseUpMin_ms:=100

;// *** /Settings ***

Gosub, OnStartup

;// *** Build Tray Menu ***

Text_ClicksBlocked=Clicks Blocked
Text_Debug=Debug
Text_Debug_OnlyBlocked=Debug (only blocked)

Menu, Tray, Add, %Text_ClicksBlocked%, BuggyMouse_MenuSelect_ClicksBlocked
Text_ClicksBlocked_MenuCurrent:=Text_ClicksBlocked
Menu, Tray, Default, %Text_ClicksBlocked%
Menu, Tray, Add, %Text_Debug%, BuggyMouse_MenuSelect_Debug
Menu, Tray, Add, %Text_Debug_OnlyBlocked%, BuggyMouse_MenuSelect_Debug_OnlyBlocked
Menu, Tray, Disable, %Text_Debug_OnlyBlocked%
Menu, Tray, Add
Menu, Tray, NoStandard
Menu, Tray, Standard

;// *** /Build Tray Menu ***

;//BuggyMouse_Debug:=1
;//BuggyMouse_Debug_OnlyBlocked:=1
Gosub, BuggyMouse_MenuSelect_Debug
Gosub, BuggyMouse_MenuSelect_Debug_OnlyBlocked
return

OnStartup:
logdir=%A_ScriptDir%
logfilename=%A_ScriptName%.log
logfile=%logdir%\%logfilename%

time:=time()
logmsg=
(LTrim
%A_ScriptName% Started`t`t%time%
` Status`t`tUpDn`t Key`t`t`tReason`t`t`t`tWindow`n
)
log(logmsg)
return

OnExit:
time:=time()
logmsg=
(LTrim
%A_ScriptName% Exited`t`t%time%`n`n
)
log(logmsg)
ExitApp

LButton::
MButton::
RButton::
log_key:="Down`t" A_ThisHotkey "`t"
Critical
di++
TimeSinceLastMouseDown:=A_TickCount-LastMouseDown_ts
;//TimeSinceLastMouseUp:=A_TickCount-LastMouseUp_ts
DoubleClickTooFast:=TimeSinceLastMouseDown<=DoubleClickMin_ms
;// *** DISABLED *** ClickAfterMouseUpTooSoon:=(ClickAfterMouseUpMin_ms!="" && TimeSinceLastMouseUp<=ClickAfterMouseUpMin_ms)
;//if ((A_ThisHotkey==LastMouseDown && DoubleClickTooFast) || ClickAfterMouseUpTooSoon) {
if (A_ThisHotkey==LastMouseDown && (DoubleClickTooFast || ClickAfterMouseUpTooSoon)) {
;//if (A_TimeSincePriorHotkey<=DoubleClickMin_ms) {
reason:=DoubleClickTooFast ? "DoubleClickTooFast" "(" TimeSinceLastMouseDown ")" "(" DoubleClickMin_ms ")"
: ClickAfterMouseUpTooSoon ? "ClickAfterMouseUpTooSoon" "(" TimeSinceLastMouseUp ")" "(" ClickAfterMouseUpMin_ms ")"
: "Unknown"
msg=`nblocked (%reason%)
blockeddown:=1
BlockedCount_Down++
A_ThisHotkeyVarSafe:=RegExReplace(A_ThisHotkey, "i)[^a-z0-9_]")
BlockedCount_%A_ThisHotkeyVarSafe%++
Gosub, BuggyMouse_UpdateStatus_ClicksBlocked

log_action:="BLOCKED`t"
} else {
reason:=""
Send, {%A_ThisHotkey% DownTemp}
msg=`nSent, {%A_ThisHotkey% DownTemp}`n`n
(LTrim C
if (%A_ThisHotkey%==%LastMouseDown% && (%DoubleClickTooFast% || %ClickAfterMouseUpTooSoon%))
)

log_action:="`tallowed"
}
BuggyMouse_DebugMsg_down=%di%: %A_ThisHotkey%(%TimeSinceLastMouseDown%)%LastMouseDown%%msg%
msg=
Gosub, BuggyMouse_Debug
LastMouseDown:=A_ThisHotkey
LastMouseDown_ts:=A_TickCount

wininfo:=WinGetInfo("a")
log(log_action "`t`t" log_key "`t`t" reason "`t`t`t`t`t" wininfo "`n")
return

LButton up::
MButton up::
RButton up::
log_key:=" Up `t" A_ThisHotkey
Critical
ui++
TimeSinceLastMouseUp:=A_TickCount-LastMouseUp_ts
;//if (A_ThisHotkey=A_PriorHotkey && A_TimeSincePriorHotkey<=DoubleClickMin_ms) {
;//if (A_ThisHotkey=LastMouseUp && A_TimeSincePriorHotkey<=DoubleClickMin_ms) {
if (blockeddown) {
msg=`nblocked
blockedup:=1
BlockedCount_Up++
A_ThisHotkeyVarSafe:=RegExReplace(A_ThisHotkey, "i)[^a-z0-9_]")
BlockedCount_%A_ThisHotkeyVarSafe%++
Gosub, BuggyMouse_UpdateStatus_ClicksBlocked

log_action:="BLOCKED`t"
} else {
Send, {%A_ThisHotkey%}
msg=`nSent, {%A_ThisHotkey%}
log_action:="`tallowed"
}
;//if (BuggyMouse_Debug) {
BuggyMouse_DebugMsg_up=%ui%: %A_ThisHotkey%(%TimeSinceLastMouseUp%)%LastMouseUp%%msg%
msg=
Gosub, BuggyMouse_Debug
;//}
blockeddown=
blockedup=
LastMouseUp:=A_ThisHotkey
LastMouseUp_ts:=A_TickCount

wininfo:=WinGetInfo("a")
log(log_action "`t`t" log_key "`t`t" reason "`t`t`t`t`t" wininfo "`n")
return

BuggyMouse_Debug_ShowLastMsg:
;//BuggyMouse_Debug_ShowLastMsg=1
BuggyMouse_Debug:

return

BuggyMouse_UpdateStatus_ClicksBlocked:
BlockedCount_Total:=BlockedCount_Down+BlockedCount_Up
Text_ClicksBlocked_MenuNew=%Text_ClicksBlocked%: %BlockedCount_Total%
Menu, Tray, Rename, %Text_ClicksBlocked_MenuCurrent%, %Text_ClicksBlocked_MenuNew%
Text_ClicksBlocked_MenuCurrent:=Text_ClicksBlocked_MenuNew
Menu, Tray, Tip, %Text_ClicksBlocked_MenuCurrent% - %A_ScriptName%
return

BuggyMouse_MenuSelect_ClicksBlocked:
msgbox, 64, ,
(LTrim C
%Text_ClicksBlocked_MenuCurrent%

Down(%BlockedCount_Down%)
Up(%BlockedCount_Up%)

LButton(%BlockedCount_LButton%)
MButton(%BlockedCount_MButton%)
RButton(%BlockedCount_RButton%)

LButton up(%BlockedCount_LButtonup%)
MButton up(%BlockedCount_MButtonup%)
RButton up(%BlockedCount_RButtonup%)
)
return

BuggyMouse_MenuSelect_Debug:
BuggyMouse_Debug:=!BuggyMouse_Debug
Menu, Tray, ToggleCheck, %Text_Debug%
Menu, Tray, ToggleEnable, %Text_Debug_OnlyBlocked%
Tooltip
return

BuggyMouse_MenuSelect_Debug_OnlyBlocked:
BuggyMouse_Debug_OnlyBlocked:=!BuggyMouse_Debug_OnlyBlocked
Menu, Tray, ToggleCheck, %Text_Debug_OnlyBlocked%
Tooltip
return

log(p_msg, p_file="") {
Global Log, logfile
if (!Log) {
return
}
if (p_file="") {
p_file:=logfile
}
FileAppend, %p_msg%, %p_file%
}

time() {
FormatTime, time, L1033, ddd, MMM d, yyyy --- M/d/yy h:mm:sstt
return time
}

WinGetInfo(p_win, ByRef r_win_title="", ByRef r_win_class="") {
WinGetTitle, win_title, %p_win%
WinGetClass, win_class, %p_win%

r_win_title:=(win_title ? win_title:"<no-title-info>")
r_win_class:=(win_class ? win_class:"<no-class-info>")

;//wininfo:=(win_title ? win_title:"<no-title-info>") " - " (win_class ? win_class:"<no-class-info>")
wininfo:=(win_class ? win_class:"<no-class-info>") ": " (win_title ? win_title:"<no-title-info>")
return wininfo
}

#ScrollLock::log("*** PROBLEM ***`n")
^+#!F8::Gosub, BuggyMouse_Debug_ShowLastMsg
^+#!F9::Suspend
^+#!F12::ExitApp
;//*F12::ExitApp
;//F11::
;//toggle:=!toggle
;//if (toggle) {
;// Hotkey, *F12, Off
;//} else {
;// Hotkey, *F12, On
;//}
;//return

/* ;// **************************** Changelog / Version History ****************************
**
** Created: Fri, Apr 11, 2008 --- 4/11/08, 11:19:19am
** Modified: Sat, Apr 12, 2008 --- 4/12/08, 5:38:19am
** Modified: Sun, Jul 10, 2011 --- 7/10/11, 3:19:19am EDT
** * Added blocking of "mouse down too soon after last mouse up"
** Modified: Wed, Jul 20, 2011 --- 7/20/11, 1:19:19pm EDT
** Modified: Thu, Aug 25, 2011 --- 8/25/11, 1:19:19am EDT
** * Temporarily disabled "mouse down too soon after last mouse up" blocking, until I get it working.
** Modified: Thu, Aug 25, 2011 --- 8/25/11, 2:38:19am EDT
** * Updated Keywords for search engines
** Modified: Sat, Aug 27, 2011 --- 8/27/11, 7:19:19am EDT
** * Added Logging
** Modified: Sat, Aug 27, 2011 --- 8/27/11, 2:38:19pm EDT
** * Added Window Info to log
**
*/ ;// **************************** /Changelog / Version History ****************************


"DoubleClickMin_ms:=80"
you can change the time between blocked clicks here

all credits to the author!

Clever! Although I would recommend even less than 80 ms ...
TheRabidDeer
Profile Blog Joined May 2003
United States3806 Posts
December 08 2012 17:42 GMT
#24
On December 07 2012 20:17 Martijn wrote:
The doubleclicking and the scrollwheel breaking are known issues. I'm on my third deathadder, the scrollwheel set a record time in breaking, < 3 months.

I miss the diamondback. I really liked the separation between the buttons and the rest of the outer hull and they lasted through a lot. Bling's deathadder broke this weekend just before the final and he had to play on someone elses.

Maybe time to contact madcatz and see about getting a RAT. It looks like a freak of nature to me, but the reviews are really good..

It seems like really bad quality on these mice. My last deathadder lasted about a year, then the doubleclick issue got to be unbearable. My current one has been about 9 months or so and now I am getting a strange scrollwheel issue. Sometimes I scroll down and get a scroll up or two. Sometimes I scroll up and get a scroll down or two. Sometimes I get a scroll for no reason at all. It hasnt been too often, but it has happened... and its really annoying when playing a game like CS where scroll is jump and you randomly jump for no reason.
Incytech
Profile Joined July 2015
1 Post
July 29 2015 05:40 GMT
#25
I fixed my DA Chroma double clicking issue by blowing into the Left Click button *gently* with an air compressor. Hope this helps anyone else! My next mouse is going to be a logitech... :L
FiWiFaKi
Profile Blog Joined February 2009
Canada9859 Posts
July 29 2015 14:41 GMT
#26
I have had the Razer Deathadder 3.5G AND Razor Deathadder 2013 that got this problem. The 2013 DA lasted for 2 years, and the 3.5G DA lasted for about 3-4 years. Luckily I got bought 4 year warranty for the 2013 DA, as Razer products are famous for shitting out after a couple years... And got it replaced for "free", but the new colorful DA.

Unless this mouse lasts for 8+ years, I don't think I'll buy a Razer mouse again.
In life, the journey is more satisfying than the destination. || .::Entrepreneurship::. Living a few years of your life like most people won't, so that you can spend the rest of your life like most people can't || Mechanical Engineering & Economics Major
xevis
Profile Joined September 2010
United States218 Posts
July 30 2015 16:13 GMT
#27
The double click is not a software issue, it's mechanical. Razer built these mice to last less than two years, but will last much longer than that with a little surgery. There is a little indentation on the plastic piece that hits the micron switch, Razer made it so it stops hitting it correctly after a short period of time. There is youtube videos on exactly how to fix this, after many surgeries I have resorted to just using a little piece of masking tape to fill that gap. I have operated on my abyssus maybe 5 times in the last 3 years, and the same with my naga's.

DON"T send mice in to be replaced by the warranty. Razer will send you an older refurbished mice than you gave them and it will double click in less than 3 months too, and you will have an older mouse. Done it a few times with them until I stumbled upon those youtube videos. Hope this helps.
How can you have any pudding if you don't eat your meat?
WellCrap
Profile Joined July 2012
Sweden122 Posts
July 30 2015 22:36 GMT
#28
On July 31 2015 01:13 xevis wrote:
The double click is not a software issue, it's mechanical. Razer built these mice to last less than two years, but will last much longer than that with a little surgery. There is a little indentation on the plastic piece that hits the micron switch, Razer made it so it stops hitting it correctly after a short period of time. There is youtube videos on exactly how to fix this, after many surgeries I have resorted to just using a little piece of masking tape to fill that gap. I have operated on my abyssus maybe 5 times in the last 3 years, and the same with my naga's.

DON"T send mice in to be replaced by the warranty. Razer will send you an older refurbished mice than you gave them and it will double click in less than 3 months too, and you will have an older mouse. Done it a few times with them until I stumbled upon those youtube videos. Hope this helps.

Its not that they have designed the switch for it to break, its just a fairly low quality switch. You can easily avoid having to fix the switch over and over again by replacing the micro switch with something like a d2f-01f. Its not hard to de-solder a switch, If my shaky hands can do it then you can
G9x-MiCo
xevis
Profile Joined September 2010
United States218 Posts
July 31 2015 00:07 GMT
#29
The omron switch works just fine, its the piece of plastic that contacts the switch when you press your left or right mouse button, that piece was designed to fail imo. There are youtube vids on how to fix it in great detail, very easy to do.
How can you have any pudding if you don't eat your meat?
cabal]
Profile Joined January 2013
Belgium37 Posts
August 04 2015 15:13 GMT
#30
I've been through 3 deathadders over the last 4 years. Everytime broken left mous button.
funkie
Profile Blog Joined November 2005
Venezuela9376 Posts
December 11 2015 15:59 GMT
#31
This is a good bump, promise.

I found this tutorial on how to fix the switch that triggers the click on the DeathAdder.

Since mine was doing the double-click thing too, I decided to give it a try.

I now have a fully working Deathadder again. .

https://t.co/12m0RM9dPy

Cheers!
CJ Entusman #6! · Strength is the basis of athletic ability. -Rippetoe /* http://j.mp/TL-App <- TL iPhone App 2.0! */
y0su
Profile Blog Joined September 2011
Finland7871 Posts
December 11 2015 21:26 GMT
#32
On December 12 2015 00:59 funkie wrote:
This is a good bump, promise.

I found this tutorial on how to fix the switch that triggers the click on the DeathAdder.

Since mine was doing the double-click thing too, I decided to give it a try.

I now have a fully working Deathadder again. .

https://t.co/12m0RM9dPy

Cheers!

I did that - used switches from an old mouse to fix a DA.
TelecoM
Profile Blog Joined January 2010
United States10680 Posts
December 12 2015 22:27 GMT
#33
Had the same issue
AKA: TelecoM[WHITE] Protoss fighting
Prev 1 2 All
Please log in or register to reply.
Live Events Refresh
Online Event
17:00
Stellar Fest L4S: Europe
Clem vs SKillousLIVE!
PiGStarcraft1380
TKL 344
IndyStarCraft 225
LiquipediaDiscussion
[ Submit Event ]
Live Streams
Refresh
StarCraft 2
PiGStarcraft1380
TKL 344
IndyStarCraft 225
StarCraft: Brood War
Britney 18788
Leta 137
Dewaltoss 108
ZZZero.O 79
Backho 60
NaDa 6
ajuk12(nOOB) 2
Dota 2
capcasts85
LuMiX1
Counter-Strike
Stewie2K328
Heroes of the Storm
Liquid`Hasu489
Khaldor148
Other Games
FrodaN3673
Grubby2696
fl0m1117
mouzStarbuck215
KnowMe179
C9.Mang0159
Hui .158
syndereN126
ArmadaUGS78
XaKoH 74
ZombieGrub57
NeuroSwarm48
Organizations
Other Games
BasetradeTV33
StarCraft 2
Blizzard YouTube
StarCraft: Brood War
BSLTrovo
sctven
[ Show 19 non-featured ]
StarCraft 2
• Hupsaiya 6
• sooper7s
• AfreecaTV YouTube
• Migwel
• LaughNgamezSOOP
• intothetv
• IndyKCrew
• Kozan
StarCraft: Brood War
• 3DClanTV 60
• FirePhoenix10
• STPLYoutube
• ZZZeroYoutube
• BSLYoutube
Dota 2
• C_a_k_e 3975
• masondota21394
• WagamamaTV689
• Ler86
League of Legends
• Jankos2328
Other Games
• imaqtpie1099
Upcoming Events
Online Event
14h 15m
[BSL 2025] Weekly
21h 15m
Safe House 2
21h 15m
Sparkling Tuna Cup
1d 13h
BSL Team Wars
1d 22h
Team Bonyth vs Team Dewalt
Dewalt vs kogeT
JDConan vs Tarson
RaNgeD vs DragOn
StRyKeR vs Bonyth
Aeternum vs Hejek
Replay Cast
2 days
Map Test Tournament
3 days
Map Test Tournament
4 days
The PondCast
5 days
Map Test Tournament
5 days
[ Show More ]
Map Test Tournament
6 days
OSC
6 days
Liquipedia Results

Completed

KCM Race Survival 2025 Season 3
Maestros of the Game
HCC Europe

Ongoing

BSL 20 Team Wars
BSL 21 Points
ASL Season 20
CSL 2025 AUTUMN (S18)
Acropolis #4 - TS2
EC S1
ESL Pro League S22
Frag Blocktober 2025
Urban Riga Open #1
FERJEE Rush 2025
Birch Cup 2025
DraculaN #2
LanDaLan #3
StarSeries Fall 2025
FISSURE Playground #2
BLAST Open Fall 2025
BLAST Open Fall Qual
Esports World Cup 2025
BLAST Bounty Fall 2025
BLAST Bounty Fall Qual
IEM Cologne 2025

Upcoming

IPSL Winter 2025-26
SC4ALL: Brood War
BSL Season 21
BSL 21 Team A
RSL Revival: Season 3
Stellar Fest
SC4ALL: StarCraft II
WardiTV TLMC #15
ESL Impact League Season 8
SL Budapest Major 2025
BLAST Rivals Fall 2025
IEM Chengdu 2025
PGL Masters Bucharest 2025
Thunderpick World Champ.
CS Asia Championships 2025
TLPD

1. ByuN
2. TY
3. Dark
4. Solar
5. Stats
6. Nerchio
7. sOs
8. soO
9. INnoVation
10. Elazer
1. Rain
2. Flash
3. EffOrt
4. Last
5. Bisu
6. Soulkey
7. Mini
8. Sharp
Sidebar Settings...

Advertising | Privacy Policy | Terms Of Use | Contact Us

Original banner artwork: Jim Warren
The contents of this webpage are copyright © 2025 TLnet. All Rights Reserved.