[Tutorial] Making the Ultimate Couch Experience for Citra! Steam + Full Screen + Controller


#1

Hi folks! So, I’ll teach how to make Citra Edge on Windows very user friendly for people that, like me, likes to play it with the Couch/TV/Controller combo. We already have a Controller guide and a Full Screen guide, so the next step is creating a neat dashboard to play your games.

Keep in mind that you don’t necessarily need Controller/Full screen to get my guide working. All we are doing is creating shortcuts to auto play your game. The mouse/keyboard combo will work like a charm as well.

I’ll teach how to do that with Steam, as I believe it’s the simplest and most used gaming tool these days. Beside, you’ll have some perks (Big Picture Mode for Controllers, Screenshot keys, custom banners and your friends being able to see what you are playing).

BTW, my only merit was to gather the information and add a few extras. All credits goes to JayFoxRox for figuring out how to get shortcuts working.

Steam Shortcuts for Citra

Open Steam and go into your game library. Click on ADD A GAME on bottom left and press on Add a Non-Steam Game.

You will be asked to choose a program. Choose anything. You’ll edit it right away. After creating the shortcut, right click it and go to properties.

Change the target to this location. Don’t forget to make the highlighted changes to match with your pc (copy " as well):

C:\Users\ Your Username\AppData\Local\citra\Update.exe” --processStart=citra-qt.exe “-a=“C:\ Your gamepath\ Your Game.3ds””

You will also need to change the start in location. Use this model:

C:\Users\ Your Username\AppData\Local\citra”

You can also change the name and the icon. The icon isn’t that important if you plan on using Big Picture Mode (the one for controllers). However, I do recommend adding a custom banner. To do that, change your view to grid. It’s on the top right section.

Right click your game and set a custom image. PNG and JPG works fine. Steam banners are 460 x 215 pixels, so find an image that match that proportion.

Repeat this process with your favorite games and that’s about it. By clicking on it, Steam will open the latest installed build and auto load the game. With full screen enabled and a controller config, you’ll have an instant gaming experience anytime.

There is, however, a catch: these shortcuts don’t update Citra if a new version is available.

That means that you’ll have to open the official Citra Edge shortcut from time to time in order to update your build. You can either open it the normal way or set a steam shortcut and use your controller. If you choose the shortcut, use this target (the start in path is the same as before):

C:\Users\ Your Username\AppData\Local\citra\Update.exe” --processStart “updater.exe”

4) Extras

Here are two little extras that can improve your experience depending on your personal preferences:

  • Black background: Open qt-config.ini on \AppData\Roaming\Citra\config. Change this section on [Renderer] from 1 to 0:

bg_red=0
bg_green=0
bg_blue=0

  • Ultra wide Layout: For 21:9 monitors, open qt-config.ini on \AppData\Roaming\Citra\config and change the entire [Layout] to:

layout_option=-1
swap_screen=false
custom_top_left=0
custom_top_top=0
custom_top_right=1667
custom_top_bottom=1000
custom_bottom_left=1667
custom_bottom_top=330
custom_bottom_right=2567
custom_bottom_bottom=1000
custom_layout=true

That’s it! Hope that it helps! :smile:


Regarding citra emulator
Steam shortcut issues
#2

It should be noted that this guide is exclusive to Windows and Bleeding Edge.
Similar things on macOS or Linux can be achieved (and also with other Citra builds - either your own or nightly) but this would require seperate guides.


#3

Yes. I’ve edited to make clear that I’m talking about Windows and Citra Edge. Btw, if anyone needs assist with a different citra version, pm me.

Linux and Mac I have no idea how to help :joy:


#4

Great guide ty for that. Do you happen to know where i can get the best build for blaster master zero?


#5

Hi. Sadly, I do not know this game to recommend a specific build.

What I can say is that Citra gets better performance on games each update, so always aim at the latest version.


#6

I can follow most of this, but I’m kind of lost when it comes to adjusting the controller settings for the ps4 dual shock. I see someone uses the touchpad for the stylus, and another made a change for running full speed with the left stick, but creating the settings from scratch is beyond me.

Has anyone got a ps4 dual shock controller profile posted anywhere? (We have the 360 controllers, but use the superior ps4 controllers 95% of the time.)

Thanks for putting this guide together!


#7

Hi. I haven’t found a PS4 profile for Citra yet. And what do you mean by “running full speed with the left stick”?

For PS4 controllers, there may be an easier solution than making a profile from scratch. There is a tool called DS4Windows. With that installed, you can apply a 360 preset on your controller and also use the touchpad as a mouse. Use that and that 360 profile will work for you (and you’ll have the touch features as well).

I mean, that’s the idea, but I haven’t tested it yet. I’ll test it later and, if working good, update the guide.


#8

I have ds4windows, but it makes sense to use steam since we can launch from steam.

If you follow the link to wwylkie’s config and scroll down, he talks about a fix for not being able to run full speed using the l stick [I think].

My eyesight has gotten too bad in the last few years to play on the ds anymore, and I was hoping to be able to finally finish occarina and majora on our 82" tv using this. I though I had it set up from his previous post about full screen setup, but I can’t figure out the circle pad setting for the ps4 dual shock to get past the initial black screen with the corner logo to start the game.

(We decided before getting Breath to go through and finish all the old zelda games we hadn’t completed first… my wife never played the original NES version, and I found that Nintendo actually remastered it in a snes-like version for the old Satellaview. )

While we are running through those, I was hoping to set citra up to do Occarina 3d and Majora HD, and then our WiiU HD remasters and skyward sword.) I’m sure its something simple in the setup I’ve missed somewhere… the rom loads, but I’m stuck at that initial black screen with the logo.

I need to look into steam controller setting sharing. .they might have the capability of sharing your controller setting in steamworks, or to your steam friends.


#9

EDIT: Figured it out, I changed the files permissions to read only after I saved it. :slight_smile:

Hey man great info, I’m trying out the controller section of your post and for some reason it’s not working for me?

I am using an Xbox 360 Controller, and I wen’t into the qt-config.ini file, edited the Controls section and replaced the info with what you have here, I saved it and opened up Citra, and it doesn’t seem to work? The controls are still mapped to my keyboard with the default settings for whatever reason, and I know that I haven’t moved anything to other than the default.

When I open up the confid inside the citra application, and close it, I see that Notepad++ says that the file has been overwritten and it goes back to the default settings on the .ini file, however even when I don’t open the config I still can’t use the xbox 360 controller to play OoT :frowning:


#11

Just thought i would share this AutoHotKey script as it is relevant to this, this script will Autodetect Citra and fullscreen it and remove all annoying title bars as soon as it opens, I have also remapped the Z axis on the Xbox 360 controller to send the Tab button (This is so you can swap screens with this key), you can remove this part if not needed.

#Persistent
SetTimer, WatchWindow, 5000
SetTimer, WatchAxis, 5
SwitchWindow = false
ActivateWindow = true
return

WatchAxis:
ifwinActive,  ahk_exe citra-qt.exe
{
GetKeyState, JoyZ, JoyZ
SetKeyDelay -1

if JoyZ < 45 
{
	if (SwitchWindow = "true") {
		Send, {Tab Down}
		SwitchWindow = false
	}
} else {
	if (SwitchWindow = "false") {
		Send, {Tab Up}
		SwitchWindow = true
	}
}
}
return


WatchWindow:
ifWinExist, ahk_exe citra-qt.exe
{
	if (ActivateWindow = "true")
	{
		WinActivate 
		WinMaximize
		WinSet, Style, -0xC00000, A  ;
		ActivateWindow  = false

	}
	return
}
ActivateWindow  = true
return

#12

This could easily deserve it’s own tutorial topic.

We should modularize them more anyway (imo this one should just do the Steam part, then link to another one for fullscreen and then mine for controller and another one for the background color settings)


#13

What changes for Citra Canary and/or Citra Nightly? Would love for that information to at least be in the comments here.