View Full Version : Dual-boxing with one computer, 2 monitors
Is there any way I can set up one computer with two monitors that each have WoW running fullscreen, and have one key press register in both instances of WoW? I've been looking for the past 3 hours and can't find any specifics on how to do this, if it's even possible.
Thanks for any help.
Some people are using a "multibox program" but I have never tested it and have no intentions of doing so. That apparently is to simulate a keyboard multicaster in software over a tcp/ip network.
As for sending multiple keystrokes to multiple WINDOWS at the same time - I am sure it is possible but I have nothing to give you at this time. There is no *easy* way to do that that I am aware of. I bet it would be much easier to do with Linux though..... perhaps setup two X'es and configure the keyboard to send key presses to both WoW's.....
Pretty sure that you will need a fair amount of Linux know how to pull it off but that is most likely how I would do it if I really wanted to.
Scribbler
04-16-2007, 12:58 PM
You can do this with autoit, not entirely sure how, but I know it can be done.
daanji
04-18-2007, 03:36 AM
I do this currently with 2+ instances on my main desktop.
The program I use is called Autohot key.
Here is the script I use to broad cast to each of the inactive instances.
I currently use it to play a paladin and two warlocks on the same machine at once.
It isn't perfect and it only supports key 1, 2, ... 0, - = and all the modifiers such as CTRL/ALT/SHIFT
WinGet, wowid, List, World of Warcraft
inactive_ctrl(key)
{
local id = 0
loop, %wowid%
{
id := wowid%A_index%
IfWinNotActive, ahk_id %id%
{
ControlSend,, %key%, ahk_id %id%
}
}
}
IfWinActive, World of Warcraft
{
~1::
KeyWait 1
inactive_ctrl("1")
Return
~2::
KeyWait 2
inactive_ctrl("2")
Return
~3::
KeyWait 3
inactive_ctrl("3")
Return
~4::
KeyWait 4
inactive_ctrl("4")
Return
~5::
KeyWait 5
inactive_ctrl("5")
Return
~6::
KeyWait 6
inactive_ctrl("6")
Return
~7::
KeyWait 7
inactive_ctrl("7")
Return
~8::
KeyWait 8
inactive_ctrl("8")
Return
~9::
KeyWait 9
inactive_ctrl("9")
Return
~0::
KeyWait 0
inactive_ctrl("0")
Return
~-::
KeyWait -
inactive_ctrl("-")
Return
~=::
KeyWait =
inactive_ctrl("=")
Return
~Shift & ~1::
inactive_ctrl("{Shift down}{1 down}{1 up}{Shift up}")
Return
~Shift & ~2::
inactive_ctrl("{Shift down}{2 down}{2 up}{Shift up}")
Return
~Shift & ~3::
inactive_ctrl("{Shift down}{3 down}{3 up}{Shift up}")
Return
~Shift & ~4::
inactive_ctrl("{Shift down}{4 down}{4 up}{Shift up}")
Return
~Shift & ~5::
inactive_ctrl("{Shift down}{5 down}{5 up}{Shift up}")
Return
~Shift & ~6::
inactive_ctrl("{Shift down}{6 down}{6 up}{Shift up}")
Return
~Shift & ~7::
inactive_ctrl("{Shift down}{7 down}{7 up}{Shift up}")
Return
~Shift & ~8::
inactive_ctrl("{Shift down}{8 down}{8 up}{Shift up}")
Return
~Shift & ~9::
inactive_ctrl("{Shift down}{9 down}{9 up}{Shift up}")
Return
~Shift & ~0::
inactive_ctrl("{Shift down}{0 down}{0 up}{Shift up}")
Return
~Shift & ~-::
inactive_ctrl("{Shift down}{- down}{- up}{Shift up}")
Return
~Shift & ~=::
inactive_ctrl("{Shift down}{= down}{= up}{Shift up}")
Return
~Alt & ~1::
inactive_ctrl("{Alt down}{1 down}{1 up}{Alt up}")
Return
~Alt & ~2::
inactive_ctrl("{Alt down}{2 down}{2 up}{Alt up}")
Return
~Alt & ~3::
inactive_ctrl("{Alt down}{3 down}{3 up}{Alt up}")
Return
~Alt & ~4::
inactive_ctrl("{Alt down}{4 down}{4 up}{Alt up}")
Return
~Alt & ~5::
inactive_ctrl("{Alt down}{5 down}{5 up}{Alt up}")
Return
~Alt & ~6::
inactive_ctrl("{Alt down}{6 down}{6 up}{Alt up}")
Return
~Alt & ~7::
inactive_ctrl("{Alt down}{7 down}{7 up}{Alt up}")
Return
~Alt & ~8::
inactive_ctrl("{Alt down}{8 down}{8 up}{Alt up}")
Return
~Alt & ~9::
inactive_ctrl("{Alt down}{9 down}{9 up}{Alt up}")
Return
~Alt & ~0::
inactive_ctrl("{Alt down}{0 down}{0 up}{Alt up}")
Return
~Alt & ~-::
inactive_ctrl("{Alt down}{- down}{- up}{Alt up}")
Return
~Alt & ~=::
inactive_ctrl("{Alt down}{= down}{= up}{Alt up}")
Return
~Control & ~1::
inactive_ctrl("{Control down}{1 down}{1 up}{Control up}")
Return
~Control & ~2::
inactive_ctrl("{Control down}{2 down}{2 up}{Control up}")
Return
~Control & ~3::
inactive_ctrl("{Control down}{3 down}{3 up}{Control up}")
Return
~Control & ~4::
inactive_ctrl("{Control down}{4 down}{4 up}{Control up}")
Return
~Control & ~5::
inactive_ctrl("{Control down}{5 down}{5 up}{Control up}")
Return
~Control & ~6::
inactive_ctrl("{Control down}{6 down}{6 up}{Control up}")
Return
~Control & ~7::
inactive_ctrl("{Control down}{7 down}{7 up}{Control up}")
Return
~Control & ~8::
inactive_ctrl("{Control down}{8 down}{8 up}{Control up}")
Return
~Control & ~9::
inactive_ctrl("{Control down}{9 down}{9 up}{Control up}")
Return
~Control & ~0::
inactive_ctrl("{Control down}{0 down}{0 up}{Control up}")
Return
~Control & ~-::
inactive_ctrl("{Control down}{- down}{- up}{Control up}")
Return
~Control & ~=::
inactive_ctrl("{Control down}{= down}{= up}{Control up}")
Return
} ;End IF
If anyone has any comments, suggestions, improvements, etc. Please respond.
Also, this script now works perfectly with Mich's Multibox app. So you can do multiple instances on the same computer and have a couple on different machiens.
thrillhaus
04-18-2007, 10:36 AM
Oh so it's not sending double a key? That was my problem too when I made a script. Hit 1 while chatting and you get 11... kind of annoying :)
you can do that, but be sure to expect very laggish gameplay
daanji
04-19-2007, 01:15 AM
Oh so it's not sending double a key? That was my problem too when I made a script. Hit 1 while chatting and you get 11... kind of annoying
Yeah, that was my initial problem as well, so I reworked the script to send the extra keystrokes to the inactive instances. You should be able to copy/paste my script and it should work.
If you need more keys sent to the extra instances, then just follow the same pattern I used.
you can do that, but be sure to expect very laggish gameplay
I can run two instances on my main box and I get 40 FPS on each instance. Latency is 100ms or less. No lag at all.
Here is my compuer hardware: Bought it all in September for $1200
GIGABYTE GA-965P-DS3 LGA 775 Intel P965 Express ATX Intel
GIGABYTE GV-NX76T256D-RH GeForce 7600GT 256MB
ENERMAX Liberty ELT500AWT ATX12V 500W Power
CORSAIR XMS2 2GB (2 x 1GB) 240-Pin DDR2 SDRAM
LITE-ON 16X DVD±R DVD Burner With LightScribe and 5X DVD-RAM Write Black ATAPI/E-IDE Model SHM-165H6S - Retail
ARCTIC COOLING Freezer 7 Pro 92mm CPU Cooler
Intel Core 2 Duo E6300 Conroe 1.86GHz LGA 775
Western Digital Raptor WD1500ADFD 150GB 10,000 RPM Serial ATA150
So nothing too Amazing and I can play two instances of WoW easily. I can play three, but I have to turn down a lot of the graphics.
Most likely due to the Core 2 Duo + 10k RPM Raptor + 2 Gig of Ram + Decent graphics card.
Try doing it with a single core processor, a gig of ram and 7200 rpm hard drive and playing 2 WoWs gets a bit more difficult / laggy.
Hmm..... so with a Quad Core... 5 Gigs of Ram and a DRAM based hard drive.... I could theoretically 5 box on 1 machine :) Not sure that I would want to though. There are still bottlenecks - plus less redundancy.
Scribbler
05-05-2007, 09:08 AM
Does this only send to one? Say I had 5 WoW's running, would it send it to all off them?
Scribbler
05-05-2007, 03:10 PM
Never mind, tried this out today with 9 trial accounts xD Worked perfectly.
Orc Dance Party on Org Bank roof FTW!
Haha, nice. I think I am going to do that. I figure I can "run" about 10 copies of WoW per machine and I have enough machines to run 50 - 60 trial level 1 female orcs easily. More if I install more copies of WoW.
Is the Org bank still the center of commerce Horde side or is everything in Outland? I suppose I could use my locks to summon them all somewhere :)
thrillhaus
05-08-2007, 11:14 AM
Haha, nice. I think I am going to do that. I figure I can "run" about 10 copies of WoW per machine and I have enough machines to run 50 - 60 trial level 1 female orcs easily. More if I install more copies of WoW.
Is the Org bank still the center of commerce Horde side or is everything in Outland? I suppose I could use my locks to summon them all somewhere :)
FRAPs that :D
vBulletin® v4.2.2, Copyright ©2000-2025, Jelsoft Enterprises Ltd.