After years of playing games on a computer, sitting behind a desk with mouse and keyboard, I got bored. I wanted the couch and pad experience of a console, but I wasn’t ready to buy overpriced games and run them on outdated hardware.
And the mini pc was born
Luckily for me, Mini PCs are no longer science fiction. As of today you can find very good computer in a small form factor. I recently bought a Zbox EN1070 (a review is coming). This is a very powerful, silent and small PC. It is smaller than any current console, quieter and WAY more powerful…. and way more expensive as well.
A full console experience
However, I wanted it to be as close as possible to the console experience: ie; doing everything with my gamepad. It is not yet perfect and I still have my keyboard close, especially when I have to run a game for the first time. I am using a PS4 controller and I really loved. I have always preferred Playstation controllers to Xbox’s ones. Recently Steam announced full support of PS4 controllers in Steam big picture, and it go me excited… just for a few minutes.
Steam doesn’t support PS4 controller in non Steam games
Indeed, I realized, the hard way, that Steam support of PS4 controllers only works in Steam games. If you add non Steam games to your library (eg. games from Uplay, or Origin, or even “standalone” games), the controller will NOT work in those games. For those games to work inside Steam with your controller, you have to disable Steam integrated PS4 controller support and run an external tool such as DS4Windows.
Ok, that’s fine. What’s your problem then?
But, remember. I wanted a full console experience, and this can be done by running Windows in “Shell” mode. Windows Shell mode allows you to run an application directly at the opening of your session in place of the Windows “explorer” program. Explorer program is what draws the desktop, the bottom bar, with notification, date / time, etc. If you run Steam this way, you’ll get very close to the full console experience. However, you’ll notice that you can’t run any other application in background. Which means no controller support in non Steam games…. and this sucks.
Ok, I’m hooked. What’s the trick?
I found a pretty simple workaround that allows me to run both DS4Windows and Steam without having to run explorer. Yup, you heard it right : Steam Big Picture + DS4Windows in shell mode, working with ANY games, even non Steam games.
Let’s do it!
Don’t be afraid, this is pretty straightforward.
First, you have to install DS4Windows (or any similar software you might be used to).
- Set it up to “Start minimized”.
- Then, you obviously need Steam as well. Inside Steam, go to Settings > Interface tab and check those 2 boxes : ‘Run Steam when my computer starts’ and ‘Start Steam in Big Picture Mode’.
- While, in big picture, go to Settings > Controller Settings, and Disable PS4 support.
Now, you’ll have to write a small script. This script will run DS4Windows and Steam.
- Choose a location on your disk a create a new file. Name it “Shell.bat”, make sure that inside Windows folder properties you have unchecked the “Hide known files extension”.
- Copy / paste the following info into you script:
cd C:\Program Files (x86)\Steam\
NB: Only copy what’s inside “——-“.
NB: Make sure to change the paths according to the real location of your applcations. In my example, this is the default Steam path, concerning DS4Windows, this is the path were I installed it myself.
- If they are running, close Steam and DS4Windows, and run your script to make sure it is working. In order to do so, just right click and the script file (Shell.bat), you just created and select “Run”. If it working as expected, it will run both the DS4Windows program and the Steam client in Big Picture.
If it works, then continue. If not, double check you entered the correct locations of your programs. If you are unsure, do not hesitate to post a comment here.
Modify Windows way it logons
Now that your script works, you have to modify the way Windows starts so that it will directly run you script.
- Open Regedit (hit Win Key + R) and enter regedit, press the Return key.
- From here, navigate to: [HKEY_CURRENT_USER\Software\Microsoft\WindowsNT\CurrentVersion\Winlogon]
- Right click in the folder pane to the right and select “New > String Value”
- Name it “Shell”.
- Right click on “Shell” and select “Modify”.Enter the path of the script file you just created. For me it is C:\Apps\Shell.bat
- Close regedit, and reboot your computer.
And voilà, you now have an even closer to console experience on a real PC.