tec27 Profile Joined June 2004 United States 6 Posts Last Edited: 2013-01-14 00:36:55 #1







I noticed that there wasn't a scene switcher out for DotA 2, and since I think they give the streams a bit of a production value boost I thought I'd go ahead and make one. Thus, I present you with NetherSwap, a simple little app that will handle pressing your scene hotkeys for you. How it works

NetherSwap hooks into the code Valve calls within Windows to trap the cursor inside the game window. Because of this implementation, its very accurate in status changes while also being very safe from hack detection (NOTE: there is still a slight risk that this would one day be detected as a hack, but this is very, very slight).





NetherSwap hooks into the code Valve calls within Windows to trap the cursor inside the game window. Because of this implementation, its very accurate in status changes while also being very safe from hack detection (NOTE: there is still a slight risk that this would one day be detected as a hack, but this is very, very slight). Requirements You must run DotA in Windowed or Full Screen Windowed mode. Full Screen will NOT work.



You must run both NetherSwap and DotA with administrator privileges (if you're running DotA from Steam, this generally means you must run Steam as administrator as well).



Download

You can download the latest version of NetherSwap from:

http://tec27.com/netherswap.zip

Last update: v0.1 Monday, Jan 14 12:00am GMT (GMT+00:00)





You can download the latest version of NetherSwap from: FAQ

I get an error about a missing MSVCR100.dll when I try to run NetherSwap, how can I fix this?

Download the Visual C++ 2010 redistributable from



Does this work with XSplit? OBS?

Yes, this works with both XSplit and OBS, and should work with any program that allows you to set global hotkeys (in case you, say, want to only play music in foobar when you're in a game).



When I try to record hotkeys, it never sets any keys. What gives?

Try recording hotkeys without XSplit open, or without any scene hotkeys set. Whenever XSplit detects a scene hotkey being pressed, it prevents that hotkey from being sent to other programs, so NetherSwap will be unable to record it.



Sometimes OBS misses a status change. What's wrong?

OBS unfortunately has somewhat bad hotkey code, and relies on some weird conditions for modifiers (control, alt, shift) within them. Because of this, it can sometime discard valid hotkey presses. If you're using OBS, I'd recommend using as few modifiers (control, alt, shift) in your hotkeys as possible, ideally none.





Download the Visual C++ 2010 redistributable from http://www.microsoft.com/en-us/download/details.aspx?id=8328 Yes, this works with both XSplit and OBS, and should work with any program that allows you to set global hotkeys (in case you, say, want to only play music in foobar when you're in a game).Try recording hotkeys without XSplit open, or without any scene hotkeys set. Whenever XSplit detects a scene hotkey being pressed, it prevents that hotkey from being sent to other programs, so NetherSwap will be unable to record it.OBS unfortunately has somewhat bad hotkey code, and relies on some weird conditions for modifiers (control, alt, shift) within them. Because of this, it can sometime discard valid hotkey presses. If you're using OBS, I'd recommend using as few modifiers (control, alt, shift) in your hotkeys as possible, ideally none. Thanks To



HUEG THING APPRECIATION CONSORTIUM

dronebabo

pachi





No Thanks To



kjh



Appendix A: Source Code

The source is available on my github: The source is available on my github: https://github.com/tec27/NetherSwap . Pull requests accepted. Can you jam with the console cowboys in cyberspace?

kjwcj Profile Joined November 2011 Australia 2 Posts #2 Good job tec27!

Blitz Profile Joined April 2011 United States 324 Posts #3 tre youre so cold Caster [13:42:40] <13@mTw|syndereN|jD> Upvotes? ^_>

Risljaninasim Profile Joined July 2011 Netherlands 9 Posts #4 Good job! ;;

Heyoka Profile Joined March 2008 Temple of EE-Sama 2467 Posts Last Edited: 2013-01-08 15:50:51 #5 Shit's DOPE.



I think what I like most is how you name your programs after appropriate abilities in the game. @RealHeyoka | DreamHack StarCrafty Man

2Pacalypse- Profile Joined October 2006 Croatia 83 Posts #6 On January 09 2013 00:42 heyoka wrote:

Shit's DOPE.



I think what I like most is how you name your programs after appropriate abilities in the game.

Or buildings



Anyways, this is pretty sick and source code will be very useful for learning! Or buildingsAnyways, this is pretty sick and source code will be very useful for learning! TL Staff "We're a community of geniuses because we've found how to extract 95% of the feeling of doing something amazing without actually doing anything." - Chill

dronebabo Profile Joined December 2003 5 Posts #7 --- Nuked ---

Cranium Profile Joined August 2012 United States 20 Posts #8 I couldn't get this to work. I got an error: "A referral was returned from the server."

tec27 Profile Joined June 2004 United States 6 Posts Last Edited: 2013-01-14 00:36:31 #9 On January 14 2013 09:04 Cranium wrote:

I couldn't get this to work. I got an error: "A referral was returned from the server."

Make sure your Windows install is up to date. That error can't be returned by anything in the program, but can be shown by Windows when it tries to validate program signatures (and you have out-of-date certificates).



Edit: Try re-downloading the zip, I think I may have solved that issue. Make sure your Windows install is up to date. That error can't be returned by anything in the program, but can be shown by Windows when it tries to validate program signatures (and you have out-of-date certificates).Edit: Try re-downloading the zip, I think I may have solved that issue. Can you jam with the console cowboys in cyberspace?

Cranium Profile Joined August 2012 United States 20 Posts #10 Works great, thank you very much.

Master of DalK Profile Joined June 2012 Canada 55 Posts #11



Great work man! Wonderful work. R1CH of DOTA2Great work man! Wonderful work. @MasterDalK | Technical Director at Waveform Entertainment | Streaming Every Esport Under the Sun

justNeph Profile Joined July 2012 6 Posts #12 Hey, I seem to be running into an issue getting this to work. I posted the error on your github but here it is:



I seem to have issues getting Netherswap to run properly. I have run both steam and netherswap as admins, am playing in full screen windowed and set the hotkeys with X-Split closed. When I join a game or leave a game, it doesn't seem to be sending the messages to X-Split. The screen just says "Connected, awaiting game status updates". Not quite sure what else I could be doing wrong. Any ideas?

MotherOfRunes Profile Joined December 2010 Germany 1289 Posts #13 running both as administrator...no problem with the game staus....it seems everything is working....but when i press any hotkey, i set for switching, nothing happens....like really nothing....it just wont work without any error message or whatsoever "Your Razor sucks!" -Kuroky's Dad

tec27 Profile Joined June 2004 United States 6 Posts #14 On February 27 2013 21:55 justNeph wrote:

Hey, I seem to be running into an issue getting this to work. I posted the error on your github but here it is:



I seem to have issues getting Netherswap to run properly. I have run both steam and netherswap as admins, am playing in full screen windowed and set the hotkeys with X-Split closed. When I join a game or leave a game, it doesn't seem to be sending the messages to X-Split. The screen just says "Connected, awaiting game status updates". Not quite sure what else I could be doing wrong. Any ideas?

This status message should update as soon as it detects a game status change, so its probably more related to the detection than to any permissions things. Valve has seemingly made a change in one of the later updates that makes it so any spectating modes outside of Free Camera won't lock the mouse cursor to the window (and thus NetherSwap will think the game is in the background and/or won't send a game status update back to the main application). Have you tried it while using free camera or playing an actual game?



If so, and it still isn't working, can you give me your OS information/do you have any sort of unusual configuration? Thanks!



This status message should update as soon as it detects a game status change, so its probably more related to the detection than to any permissions things. Valve has seemingly made a change in one of the later updates that makes it so any spectating modes outside of Free Camera won't lock the mouse cursor to the window (and thus NetherSwap will think the game is in the background and/or won't send a game status update back to the main application). Have you tried it while using free camera or playing an actual game?If so, and it still isn't working, can you give me your OS information/do you have any sort of unusual configuration? Thanks! On February 27 2013 22:23 MotherOfRunes wrote:

running both as administrator...no problem with the game staus....it seems everything is working....but when i press any hotkey, i set for switching, nothing happens....like really nothing....it just wont work without any error message or whatsoever

I think you have misunderstood how this works. This application is designed to press the hotkeys you set automatically upon game status changes, not to respond to those hotkeys. So if you set your 'Game Scene' hotkey to F6, it will simulate an F6 press whenever it detects you as being in a game. If you just want hotkeys for certain scenes in XSplit/OBS, that is a built-in feature in both those programs and you shouldn't need to use this. I think you have misunderstood how this works. This application is designed to press the hotkeys you set automatically upon game status changes, not to respond to those hotkeys. So if you set your 'Game Scene' hotkey to F6, it will simulate an F6 press whenever it detects you as being in a game. If you just want hotkeys for certain scenes in XSplit/OBS, that is a built-in feature in both those programs and you shouldn't need to use this. Can you jam with the console cowboys in cyberspace?

justNeph Profile Joined July 2012 6 Posts #15 Hey tec,



I had it on during my last couple of games and it didn't seem to send the hotkeys. I'm using Windows 8 and I'm running it in Full Screen Windowed. Not really sure what else would classify as an unusual configuration.

tec27 Profile Joined June 2004 United States 6 Posts #16 Alright, its very possible its something that's changed in Windows 8 since I haven't tested it there. I'll work on testing it out on that and get back to you ASAP. Can you jam with the console cowboys in cyberspace?

flamewheel Profile Joined December 2009 FREEAGLELAND 1619 Posts #17 tec I fucking lub u damn, i was two days from retirement

Moony Profile Joined April 2010 United States 1 Post #18 trying it out. whether it works or not, thanks for the work! facebook.com/macromicrogaming

justNeph Profile Joined July 2012 6 Posts #19 Any luck tec? I'm excited to try it

tabbi Profile Joined August 2010 Germany 8 Posts #20 Great work! Exactly what i was looking for, thanks tec!

1 2 Next All