Download
Donate
Compatible Controllers
Xbox 360
- Official Wired Xbox 360 Controller for Windows
- Official Wireless Xbox 360 Controller
- A compatible wireless adapter is required to get a standard controller to connect to a Windows PC)
Xbox One
- Offical Xbox One Wireless Controller
- A bluetooth adapter/antenna is needed for XBone controller Bluetooth mode. Many laptops and tablets will already have this. Read the manual!
- A wireless adapter is needed if you want wireless mode.
- A decently long MicroUSB cable will be needed for comfortable direct wired mode usage. This is the cheapest option if you already have the controller and no Bluetooth antenna!
DualShock
DualShock controllers are great, but you NEED to emulate Xinput for Gopher to see and understand them. Fortunately, Xinput emulation is a very popular thing, as there are just as many people with DualShock controllers as there are Xbox controllers. Listings coming soon.
Third party
SOME third party controllers will most likely work as well. I haven't seen one not work, but I'd imagine some wouldn't. Research before buying, Gopher expects native Xinput devices, so the controller should as well. I won't be listing any for now until I know what ones will work. If I can find one that does the job and saves you from Microsoft's extreme profit margins, I'll list it.
Feedback
Table of contents
About Gopher
Gopher is a utility for couch-oriented PC users that wish to entirely control their PC from the couch with a controller. Gopher works by transforming Xbox (or PlayStation, if using DS3Tool) controller input into traditional keyboard and mouse input that many applications and games still completely rely on with no controller-based alternative input options. The analog sticks move the mouse, the buttons click - it's very simple. Gopher completely skips this requirement and brings controller compatibility to ALL your applications and MOST of your games. Games like Runescape will be just fine. Crysis? Maybe not so much. It all depends on what amount of traditional input the game requires. Gopher is an excellent tool for PC gaming from the couch, as it's fully capable of web browsing, playing mouse-based games, controlling media players, and launching emulators. Don't stand up and waste calories, just download Gopher!
Gopher separates itself from the competition by being efficient, small, portable, free, and fully open. If you have something you'd like to see improved, added, or changed, please fill out the survey.
Requirements
Gopher is incredibly great at being a standalone program, but with one major exception: it absolutely needs Visual C++ 2015 Runtimes to be installed. If you have run Windows Updates at least once in the lifetime of your computer, this really won't be an issue.
Using DualShock Controllers
DualShock controllers don't use typical xinput libraries like the X360 and Xbone controllers do, so you'll need something like InputMapper, SCP, DS4Windows, or DS3Tool to "emulate" an xinput device in order to get xinput-using applications like Gopher360 to understand it. Gopher360 DOES NOT automatically offer these emulation layers ( yet ;) ), so you'll need to use something to emulate it before Gopher can understand it.
Video Demonstration
Download Instructions
Download the latest release here: https://github.com/irungentoo/Gopher360/releases
I recommend that you copy it somewhere outside of the ZIP and make a shortcut to it. Adding it to your startup folder in your HTPC can make bootups a lot more convenient!
Default Controls
Gopher360 automatically generates a config file, which will contain documentation information on all input types and key bindings.
A: Left Mouse-Click.
X: Right Mouse-click.
Y: Hide terminal.
B: Enter.
D-pad: Arrow keys.
Right Analog: Scroll up/down.
Right Analog Click: F2.
Left Analog: Mouse.
Left Analog Click: Middle mouse click.
Back: Browser refresh
Start: Left Windows Key
Start + Back: Toggle. Useful for when you launch emulators or open Steam Big Picture mode. Press again to re-enable.
Start + DPad Up: Toggle gopher vibration setting.
LBumper: Browser previous
RBumper: Browser next
LBumber + RBummper: Cycle speed (x3)
LTrigger: Space
RTrigger: Backspace
Config file instructions
There is a configuration file (config.ini) that can be reconfigured for simple keybindings.
- IF YOU MESS SOMETHING UP, Gopher will automatically re-generate a config file.
You can set which controller buttons will activate the configuration events based on the official microsoft keys hexadecimal values.
Virtual Windows Keys: https://msdn.microsoft.com/en-us/library/windows/desktop/dd375731
XInput Controller Buttons: https://msdn.microsoft.com/en-us/library/windows/desktop/microsoft.directx_sdk.reference.xinput_gamepad%28v=vs.85%29.aspx
More instruction in the configuration file.
+ If you make a config file you feel could benefit people with the same use scenario as you, feel free to make a pull request for it in the public configs directory.
Build Instructions
Building is pretty straightforward, but you may get a "missing win32 include" error due to the solution targetting. Simply follow the instructions the error provides (Project -> Retarget solution) to ensure your project has a working link to the libraries it needs.
License
Gopher free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.