Log in

View Full Version : 1 PC, 1 mouse, 1 monitor, 2 WoW instances, making click healing work!



dariuslloyd
05-27-2008, 01:07 PM
Ok, I've been trying to scour the internet to find some way of achieving click healing. Yes, I know that it's totally feasible to heal your group using a good macro setup with your healer as one of the slaves and your warrior tank as your main. However, how do you heal multigroup encounters while main tanking and controlling a slave priest? Right, it gets stupid. So I think we really need to figure this out!

The basic idea is that you use 2 instances of wow on the same PC, at the same exact window positions with one account overlapping the other. Each would have the UI placed exactly the same way. For instance, you could have the addon Grid installed and have it in exactly the same location on both characters so it lines up perfectly, one right under the other. Then all we need is a way for the mouse click at a specific location to pass through to the other instance of wow, and click healing addons would work fine.

So, I could configure clique on my priest to = shift+right click would cast greater heal on a specific unitframe. I would configure grid exactly the same on both my warrior and the priest. I would configure shift+right click to be broadcast to both accounts. Then, while tanking on my warrior, I could simply mouseover a unit on Grid, shift+right click on the warrior, and since the priest's grid is directly underneath, the mouse click would pass through to him and activate the greater heal.

There MUST be some way of achieving this. On a single PC, best i can tell, mouse location is preserved. From this browser window, to wow, to the desktop.. no matter what app is in the foreground, the mouse remains in the same position. So shouldn't it be feasible to somehow pass this exact same location to the application UNDER another? I know the functionality is out there as I have discovered apps which allow you to "ghost" click through one app to one underlaying beneath it. The problem is it involves transpercy which totally crashs the 3d rendering for WoW and basically blackscreens your wow instance. There has got to be some program out there that can pass a mouse click at x,y to whatever applications are under it. Or could this be a function that could be added to keyclone?

I understand that many of the people here have elaborate setups involving multiple monitors, multiple PCs, or what have you, but if someone, anyone, can help me solve this it would go leaps and bounds in making dual boxing a FAR more enjoyable experience for me. Playing a main tank and healing a raid should be doable, but it seems beyond the scope of party 1-5 macros.

Thank you in advance for any suggestions or comments. Hell, if this could be programmed into Keyclone I'd easily pay for the cost all over again, it's that valuable! ;)

dariuslloyd
05-27-2008, 01:09 PM
This guy here seems to be thinking of something similar. [Keyclone] Feature Request - Mouse coordinates keymap thingy ('http://www.dual-boxing.com/forums/index.php?page=Thread&postID=39782&highlight=click+healing#post39782')

keyclone
05-27-2008, 01:16 PM
there is something, but it was put on hold while i worked on v1.8j

now that v1.8j is out and people are happier... i will be finishing up the new feature and pushing it out for the next release. hopefully that will address your needs

:D

dariuslloyd
05-27-2008, 01:17 PM
That makes me sooo excited! Can you elaborate at all on what it will specifically do? Pretty please?! :):)

keyclone
05-27-2008, 01:28 PM
patience, grasshopper... patience

:D

Freddie
05-27-2008, 01:37 PM
There has got to be some program out there that can pass a mouse click at x,y to whatever applications are under it.
Yes, HotkeyNet can do that.

Nomak
05-27-2008, 02:35 PM
I would love to see something similar but not locked into mouse location. Perhaps if there was a way to make buttons on WoW1 that actually click buttons on the WoW2 screen without affecting WoW1. Maybe a separate bar on the first account that you click which activate keys in the other account. That would be nice. I wish I could program my nostromo N52 to work with only ONE WoW windows as I found it so much easier to use this for a 2nd account on a 2nd PC and just map macros and F keys for quick selection and healing without even looking at the other PC. Currently using the NumPad works but the lack of button is very annoying!

Freddie
05-27-2008, 02:41 PM
With HotkeyNet, you can (for example) put the cursor on a certain location in one WoW, press a hotkey, and HotkeyNet will generate a mouse click in one or more other WoW's at the corresponding locations in their windows but not in the foreground WoW where you positioned the cursor. The WoW's that get clicked can be covered by other windows, and they can be on other PCs.

You can do various things of this sort -- this is just an example.

dariuslloyd
05-27-2008, 05:41 PM
Mr.Freddie,

I seem to be having a little issue with this. I have managed to succesfully accomplish most of what I am trying to do. The only problem I have run into is getting the program to recognize a mouseclick as the hotkey mainkey. Im trying to do shift+right mouse button, which doesnt seem to register. If i change it to shift+A, it succesfully will do the operation on the background window, got that all taken care of no problem. It's just a matter of making it recognize the mousebutton as a hotkey.

Thanks!

Freddie
05-27-2008, 06:21 PM
Mr. Darius,

You sure scoped this out quick! The reason you can't use a mouse button to trigger the action is because I haven't gotten around yet to writing the part of the program that will react to mouse buttons used as triggers. In the current build, you have to trigger the action from the keyboard, as you've noticed.

Is it useful this way or do you absolutely need to trigger it with the mouse?

dariuslloyd
05-27-2008, 07:48 PM
Mr.Freddie,

It would be hugely more intuitive to have the ability to bind to mouse buttons and key combinations. Many healers use clique addon to add mouseclick + key modifiers to cast spells, being able to use the same combinations to trigger it on an unfocused window from say a warrior, would be sexy. Also, it would allow me to continue easily using keyboard for main tanking, while seamlessly healing people. If you can add it in, that would rock.

Program seems awesome though, can do alot! This + keyclone seems to be a powerful combination.

Freddie
05-28-2008, 12:12 AM
Mr. Darius,

Well, in that case, I will move mouse triggers to the top of the todo list and get to them right away. And thanks for the kind words!

Btw did you get a chance to experiment with various MouseClick options? I suspect most of them haven't been tested by users since the default "scale" option seems to be what people need 99% of the tme.

dRiN
05-28-2008, 03:56 AM
With AHK I have made a transparent window /form with some buttons on them. It was always on top. And the buttons had sendkeys behind them. The clickable buttons where behind my party frames in order so I knew what would be rejuv, regrowth, etc. That way I could clickheal by multiplexing the keypresses bound on the buttons to other sessions. Since I don't need the heailng now I havn't spend much time on it and it seemed a bit laggy at the time. But it was clickhealing, and I believe it can be made for better performance.

I have posted my code beneath this but it is not finished in the way I used it before. This is a mashup of two code-examples I had in my mail somewhere. And only one button. I am at work so I can't access my code at home. But it's not that hard to make this something working and extend on it.

* Make a dragable window after a keypress showing the window for dragging.
* Make a configurationwindow / configuration file for profiling.
* Optimising the sendkey code
* override all other keys send, because they can make for strange reaction when clicking
* Nice button styles (so you can emulate the WoW icons for clarity)
* etc.



CustomColor = EEAA99 ; Can be any RGB color (it will be made transparent below).
Gui +LastFound +AlwaysOnTop -Caption +ToolWindow ; +ToolWindow avoids a taskbar button and an alt-tab menu item.
Gui, Color, %CustomColor%
Gui, Add, Button, x6 y9 w20 h20 , 1

; Gui, Font, s32 ; Set a large font size (32-point).
; Gui, Add, Text, vMyText cLime, XXXXX YYYYY ; XX & YY serve to auto-size the window.
; Make all pixels of this color transparent and make the text itself translucent (150):
WinSet, TransColor, %CustomColor% 150
; SetTimer, UpdateOSD, 200
; Gosub, UpdateOSD ; Make the first update immediate rather than waiting for the timer.
Gui, Show, x20 y20 NoActivate ; NoActivate avoids deactivating the currently active window.
WinSet AlwaysOnTop, On, WoW
WinSet, Style, -0xC00000, A
return

Button1:
ControlSend,,1,test.ahk
Return

GuiClose:
ExitApp

I don't know why I did not share this before, but it is something I have not seen yet (maybe this is false let me know who implemented something like this if that is the case). In this discussion something alike came forward and this is the poormanszipper so to speak.

edit: sorry for the thread hijack, maybe I should make a seperate post or something. And if the wiki folks want me to get it in there I will :D

dariuslloyd
05-28-2008, 12:27 PM
Mr.Freddie,

Adding the mouse buttons in would be awesome! :) And yes I used the NoMove parameter, which I think basically is doing the same thing if I just didnt add any. Although I think the NoMove was a 'tad' more responsive. The way I have things organized is my secondary character (window in background) is directly behind my primary with the UI frames lined up perfectly. So the mouse is over the UI window in the background and it works just fine. Adding the mouse buttons will enable me to do basically full on click healing / buffing and it's actually really simple to set up. Took me about 20 minutes to figure out how to work everything.

I might go back later and use some of the other options to make it a bit more elaborate. Like I might do a PiP for the background toon, the priest, and make it so when I click a frame on the tank, it goes to that frame on the mini pip window and performs the heal. That will be pretty awesome too lol.

Freddie
05-28-2008, 07:51 PM
Mr. Darius,


And yes I used the NoMove parameter, which I think basically is doing the same thing if I just didnt add any.
Actually they are different. By default HKN moves the cursor, waits a little bit to make sure the target app has time to notice that the cursor was moved, clicks the mouse button, waits a little bit to make sure the target app sees the click while the cursor is at the new location and not the old one, then (depending on whether you specified NoRestore) moves the cursor back.

By specifying NoMove you have told HKN not to bother moving the cursor. This is working for you because your windows are exactly superimposed. if you change the position of one of them, or if you make them different sizes, you'll need to remove NoMove.


Although I think the NoMove was a 'tad' more responsive.
It should be move responsive because the two tiny delays I just mentioned should be omitted since they are unecessary when the cursor doesn't move. However I just checked the source code and the program is delaying anyway. In your honor, sir, this will be changed in the next build, and you will be spared those 30 milliseconds of tedious waiting! (They are 15 milliseconds each by default but you can adjust them on the settings panel.)


Adding the mouse buttons will enable me to do basically full on click healing / buffing and it's actually really simple to set up. Took me about 20 minutes to figure out how to work everything.
Music to my ears, sir! I wish everyone felt that way. :)


I might go back later and use some of the other options to make it a bit more elaborate. Like I might do a PiP for the background toon, the priest, and make it so when I click a frame on the tank, it goes to that frame on the mini pip window and performs the heal. That will be pretty awesome too lol.
Nice. :) Let me know how it works out.