• Hey, guest user. Hope you're enjoying NeoGAF! Have you considered registering for an account? Come join us and add your take to the daily discourse.

Steam Controller Non-Steam Game Config Sharing Thread

If you have a Steam Controller and you want to use a custom template on a non-Steam game, it's easy enough to set up. Just modify one of the default templates and save it.

The problem is, Steam has no way of mapping your game to an app id, so you can't download community configurations. This means that if, for example (like me :( ), you have the Gog version of Witcher III, you can't directly download any configs. You would have to make them from scratch yourself, or follow this tutorial to import them:

well I asked if I could post this in the thread and they stopped responding... but they brought it to my attention, so hopefully I'm not stepping on any toes here. but check it out - a way to import and export steam configurations, and load them for non-steam games. It's a wonky work around at the moment, but it works.

Inside your steam install folder, there is a folder called controller_base. This is where all the controller configurations are. They are stored as VDF files that are human-readable. Inside this "controller_base" folder is another folder called templates. Any vdf file in this folder will show up in the templates listing for any game, including non-steam games.

If you edit a vdf file by hand and drop it into that templates folder, you can access the binding on any game. Here's a quick test, save the following into your template folder as "test.vdf"

Code:
"controller_mappings"
{
	"version" "2"
	"game" "Gamepad with Mouse_2"
	"title" "#Title"
	"description" "#Description"

	"group"
	{
		"id"		"0"
		"mode"		"four_buttons"
		"bindings"
		{
			"button_a"		"xinput_button A"
			"button_b"		"xinput_button B"
			"button_x"		"xinput_button X"
			"button_y"		"xinput_button Y"
		}
	}
	"group"
	{
		"id"		"1"
		"mode"		"dpad"
		"bindings"
		{
			"dpad_north"		"xinput_button dpad_up"
			"dpad_south"		"xinput_button dpad_down"
			"dpad_east"		"xinput_button dpad_right"
			"dpad_west"		"xinput_button dpad_left"
		}
		"settings"
		{
			"deadzone"		"5000"
		}
	}
	"group"
	{
		"id"		"2"
		"mode"		"joystick_camera"
		"bindings"
		{
			"click"		"xinput_button JOYSTICK_RIGHT"
		}
		"settings"
		{
			"output_joystick"		"1"
		}
	}
	"group"
	{
		"id"		"3"
		"mode"		"joystick_move"
		"bindings"
		{
			"click"		"xinput_button JOYSTICK_LEFT"
		}
		"settings"
		{
			"adaptive_centering"		"0"
		}
	}
	"group"
	{
		"id"		"4"
		"mode"		"trigger"
		"bindings"
		{
			"click"		"xinput_button TRIGGER_LEFT"
		}
		"settings"
		{
			"output_trigger"		"1"
		}
	}
	"group"
	{
		"id"		"5"
		"mode"		"trigger"
		"bindings"
		{
			"click"		"xinput_button TRIGGER_RIGHT"
		}
		"settings"
		{
			"output_trigger"		"2"
		}
	}
	"group"
	{
		"id"		"6"
		"mode"		"absolute_mouse"
		"bindings"
		{
			"click"		"xinput_button JOYSTICK_RIGHT"
		}
		"settings"
		{
			"sensitivity"		"99"
			"rotation"		"15"
			"doubetap_max_duration"		"324"
		}
	}
	"group"
	{
		"id"		"7"
		"mode"		"joystick_move"
		"bindings"
		{
			"click"		"xinput_button JOYSTICK_RIGHT"
		}
		"settings"
		{
			"output_joystick"		"1"
		}
	}
	"group_source_bindings"
	{
		"0"		"button_diamond active"
		"1"		"left_trackpad active"
		"2"		"right_trackpad inactive"
		"6"		"right_trackpad active"
		"3"		"joystick active"
		"4"		"left_trigger active"
		"5"		"right_trigger active"
		"7"		"right_trackpad inactive"
	}
	"switch_bindings"
	{
		"bindings"
		{
			"button_escape"		"xinput_button start"
			"button_menu"		"xinput_button select"
			"right_bumper"		"xinput_button shoulder_right"
			"left_bumper"		"xinput_button shoulder_left"
			"button_back_left"		"xinput_button a"
			"button_back_right"		"xinput_button x"
		}
	}
	"settings"
	{
		"left_trackpad_mode"		"0"
		"right_trackpad_mode"		"0"
	}
	
	"Localization"
	{
		"english"
		{
			"Title"	"Gamepad with High Precision Camera/Aim"
			"Description" "The template works best for games that are designed with a gamepad in mind, but also support a desktop mouse for camera control or aim. This will do the best job of specifically taking advantage of the right side pad on your controller for precise aiming and camera control."
		}
	}
}

If this is saved into your template folder, you should see a new, 4th template appear when you look in your controller configuration under templates.

Even better - I'm dinking around with the files ATM, but it might be able to rebind the non-steam controls using this stuff. I'll post later if I find anything interesting.

enjoy!

EDIT: seeing the way these files are created and edited, I might be able to whip up a program that lets you rebind your games outside of steam BPM. It looks like the personal mappings are stored in the game folders themselves, but they are named according to steamID, which obfuscates the process a bit.

Also, I haven't figured out where these templates are stored for local games.

Anyway, the whole point of this thread is to share configs, so go ahead and paste the contents of some vdfs.

Here's my Alpha Protocol config to start:
Code:
"controller_mappings"
{
	"version"		"2"
	"title"		"Alpha Protocol KB+M"
	"description"		"Slightly modified version of the default console button config. The face button conversation selection system will use the left analog stick instead of the face buttons."
	"creator"		"76561197965364472"
	"group"
	{
		"id"		"0"
		"Mode"		"four_buttons"
		"bindings"
		{
			"button_A"		"key_press SPACE, Interact/Cover"
			"button_B"		"key_press E, Melee"
			"button_X"		"key_press R, Reload"
			"button_Y"		"mouse_wheel SCROLL_UP, Change Weapon"
		}
		"settings"
		{
			"hold_repeat_inverval"		"99"
			"button_size"		"17990"
			"button_dist"		"19990"
		}
	}
	"group"
	{
		"id"		"1"
		"Mode"		"dpad"
		"bindings"
		{
			"dpad_north"		"key_press Z, Skills"
			"dpad_south"		"key_press C, Gadgets"
			"dpad_west"		"key_press X, Weapons"
		}
		"settings"
		{
			"hold_repeat_inverval"		"99"
			"deadzone"		"5000"
			"edge_binding_radius"		"24996"
			"analog_emulation_period"		"29"
		}
	}
	"group"
	{
		"id"		"2"
		"Mode"		"absolute_mouse"
		"bindings"
		{
			"click"		"key_press F, Scope Zoom/Center Camera"
		}
		"settings"
		{
			"sensitivity"		"275"
			"rotation"		"15"
			"doubetap_max_duration"		"320"
		}
	}
	"group"
	{
		"id"		"3"
		"Mode"		"dpad"
		"bindings"
		{
			"dpad_north"		"key_press W, Move Forward"
			"dpad_south"		"key_press S, Move Back"
			"dpad_east"		"key_press D, Move Right"
			"dpad_west"		"key_press A, Move Left"
			"click"		"key_press LEFT_SHIFT, Sprint"
		}
		"settings"
		{
			"requires_click"		"0"
			"hold_repeat_inverval"		"99"
			"edge_binding_radius"		"24995"
		}
	}
	"group"
	{
		"id"		"4"
		"Mode"		"trigger"
		"bindings"
		{
			"edge"		"mouse_button RIGHT, Aim Weapon"
		}
		"settings"
		{
			"hold_repeat_inverval"		"99"
		}
	}
	"group"
	{
		"id"		"5"
		"Mode"		"trigger"
		"bindings"
		{
			"edge"		"mouse_button LEFT, Fire Weapon"
		}
		"settings"
		{
			"hold_repeat_inverval"		"99"
		}
	}
	"preset"
	{
		"id"		"0"
		"name"		""
		"group_source_bindings"
		{
			"0"		"button_diamond active"
			"1"		"left_trackpad active"
			"2"		"right_trackpad active"
			"3"		"joystick active"
			"4"		"left_trigger active"
			"5"		"right_trigger active"
		}
		"switch_bindings"
		{
			"bindings"
			{
				"button_back_right"		"key_press R, Reload"
				"button_escape"		"key_press ESCAPE, Menu"
				"right_bumper"		"key_press G, Use Gadget"
				"left_bumper"		"key_press Q, Use Skill"
				"button_menu"		"key_press TAB, Intel"
				"button_back_left"		"key_press V, Crouch"
			}
		}
		"settings"
		{
		}
	}
}
 
U:\steam_work\client\UserData\<youraccountid>\241100\remote\controller_config/<game_appid>


use steam.db to find the game app id currently.

RG0BS1U.gif


Also found the directory where the config for my copy of Witcher 3 was generated. Thanks!
 

Krejlooc

Banned
Titanfall:

Code:
"controller_mappings"
{
	"version"		"2"
	"title"		"Titanfall"
	"description"		"titanfall bindings from Krejlooc"
	"creator"		"76561197979962265"
	"group"
	{
		"id"		"0"
		"mode"		"four_buttons"
		"bindings"
		{
			"button_A"		"xinput_button A"
			"button_B"		"xinput_button B"
			"button_X"		"xinput_button X"
			"button_Y"		"xinput_button Y"
		}
	}
	"group"
	{
		"id"		"1"
		"mode"		"dpad"
		"bindings"
		{
			"dpad_north"		"xinput_button dpad_up"
			"dpad_south"		"xinput_button dpad_down"
			"dpad_east"		"xinput_button dpad_right"
			"dpad_west"		"xinput_button dpad_left"
		}
		"settings"
		{
			"deadzone"		"5000"
		}
	}
	"group"
	{
		"id"		"2"
		"mode"		"joystick_camera"
		"bindings"
		{
			"click"		"xinput_button JOYSTICK_RIGHT"
		}
		"settings"
		{
			"output_joystick"		"1"
		}
	}
	"group"
	{
		"id"		"3"
		"mode"		"joystick_move"
		"bindings"
		{
			"click"		"xinput_button JOYSTICK_LEFT"
		}
	}
	"group"
	{
		"id"		"4"
		"mode"		"trigger"
		"bindings"
		{
			"click"		"mouse_button RIGHT"
		}
		"settings"
		{
			"output_trigger"		"1"
		}
	}
	"group"
	{
		"id"		"5"
		"mode"		"trigger"
		"bindings"
		{
			"click"		"mouse_button LEFT"
		}
		"settings"
		{
			"output_trigger"		"2"
		}
	}
	"group"
	{
		"id"		"6"
		"mode"		"absolute_mouse"
		"bindings"
		{
			"click"		"xinput_button JOYSTICK_RIGHT"
		}
		"settings"
		{
			"sensitivity"		"197"
			"rotation"		"15"
			"doubetap_max_duration"		"323"
		}
	}
	"group"
	{
		"id"		"7"
		"mode"		"joystick_move"
		"bindings"
		{
			"click"		"xinput_button JOYSTICK_RIGHT"
		}
		"settings"
		{
			"output_joystick"		"1"
		}
	}
	"preset"
	{
		"id"		"0"
		"name"		""
		"group_source_bindings"
		{
			"0"		"button_diamond active"
			"1"		"left_trackpad active"
			"2"		"right_trackpad inactive"
			"6"		"right_trackpad active"
			"7"		"right_trackpad inactive"
			"3"		"joystick active"
			"4"		"left_trigger active"
			"5"		"right_trigger active"
		}
		"switch_bindings"
		{
			"bindings"
			{
				"button_escape"		"xinput_button start"
				"button_menu"		"xinput_button select"
				"right_bumper"		"xinput_button shoulder_right"
				"left_bumper"		"xinput_button shoulder_left"
				"button_back_left"		"xinput_button a"
				"button_back_right"		"xinput_button x"
			}
		}
		"settings"
		{
		}
	}
}
 

Shari

Member
Make a website to share templates, get $$$.

Make a desktop client, get more $$$.

I'm having a 10%, thank you.

Someone automatize this please :)
 
Make a website to share templates, get $$$.

Make a desktop client, get more $$$.

I'm having a 10%, thank you.

Someone automatize this please :)

It's been 1 day. Seriously.

Be patient and all of that will happen.

Remember the actual release isn't until next month and all of us with controllers now are still effectively beta testing.
 

Shari

Member
It's been 1 day. Seriously.

Be patient and all of that will happen.

Remember the actual release isn't until next month and all of us with controllers now are still effectively beta testing.

I'm not anxious whatsoever, I know this is going to happen this week at worst.

Just saying in case someone didnt follown the trail and prefers to wait until this is done.
 
Can we get recommended Community templates as well in here in the OP fo the more popular games? Just until things settle down with users on Steam making popular ones rise to the top.

The current top ranked CSGO ones are terrible imo.
 

Wallach

Member
Here's the one I made tonight for Elder Scrolls Online. Note this wasn't on the Public Test Server where the console controller UI is being added to PC, so it may need tweaked once I try it with the new UI (though shouldn't be anything significant)

Edit - I just noticed ESO is apparently on Steam, but my non-Steam install doesn't upload configs to public, so if you are using the standalone install like I am I guess you'd need this to import the controller config:

Code:
"controller_mappings"
{
	"version"		"2"
	"title"		"Wallach's ESO Setup"
	"description"		"These bindings are set to ESO's default keybind configuration, so make sure to revert in-game keybinds to default, or change the bindings within this template to match your in-game keybinds."
	"creator"		"76561197986277841"
	"group"
	{
		"id"		"0"
		"mode"		"four_buttons"
		"bindings"
		{
			"button_a"		"key_press 1, Skill 1"
			"button_b"		"key_press 2, Skill 2"
			"button_x"		"key_press 4, Skill 4"
			"button_y"		"key_press 3, Skill 3"
		}
		"settings"
		{
			"button_size"		"17984"
			"button_dist"		"19968"
		}
	}
	"group"
	{
		"id"		"1"
		"mode"		"dpad"
		"bindings"
		{
			"dpad_north"		"key_press R, Take / Elite"
			"dpad_south"		"key_press X, Decline / Synergy"
			"dpad_east"		"key_press Q, Quickslot"
			"dpad_west"		"key_press LEFT_ALT, Character Windows"
			"click"		"key_press ESCAPE, Options"
		}
		"settings"
		{
			"requires_click"		"0"
			"overlap"		"0"
			"deadzone"		"30656"
			"edge_binding_radius"		"24995"
			"haptic_intensity"		"0"
			"analog_emulation_period"		"29"
		}
	}
	"group"
	{
		"id"		"2"
		"mode"		"dpad"
		"bindings"
		{
			"dpad_north"		"key_press W, Forward"
			"dpad_south"		"key_press S, Backward"
			"dpad_east"		"key_press D, Right"
			"dpad_west"		"key_press A, Left"
			"click"		"key_press LEFT_SHIFT, Sprint"
		}
		"settings"
		{
			"requires_click"		"0"
			"deadzone"		"6911"
			"edge_binding_radius"		"24995"
			"haptic_intensity"		"3"
			"analog_emulation_period"		"29"
		}
	}
	"group"
	{
		"id"		"3"
		"mode"		"absolute_mouse"
		"bindings"
		{
			"click"		"key_press SPACE, Jump"
		}
		"settings"
		{
			"sensitivity"		"99"
			"trackball"		"0"
			"haptic_intensity"		"3"
			"mouse_smoothing"		"18"
			"doubetap_max_duration"		"320"
		}
	}
	"group"
	{
		"id"		"4"
		"mode"		"trigger"
		"bindings"
		{
			"click"		"mouse_button RIGHT, Right Mouse"
		}
		"settings"
		{
			"output_trigger"		"1"
		}
	}
	"group"
	{
		"id"		"5"
		"mode"		"trigger"
		"bindings"
		{
			"click"		"mouse_button LEFT, Left Mouse"
		}
		"settings"
		{
			"output_trigger"		"2"
		}
	}
	"group"
	{
		"id"		"6"
		"mode"		"four_buttons"
		"settings"
		{
			"button_size"		"17998"
			"button_dist"		"19998"
		}
	}
	"group"
	{
		"id"		"7"
		"mode"		"four_buttons"
		"bindings"
		{
			"button_a"		"key_press LEFT_ALT"
		}
		"settings"
		{
			"button_size"		"17984"
			"button_dist"		"19968"
		}
	}
	"group"
	{
		"id"		"8"
		"mode"		"scrollwheel"
		"settings"
		{
			"scroll_angle"		"88"
		}
	}
	"group"
	{
		"id"		"9"
		"mode"		"dpad"
		"settings"
		{
			"edge_binding_radius"		"24997"
			"analog_emulation_period"		"29"
		}
	}
	"group"
	{
		"id"		"10"
		"mode"		"dpad"
		"settings"
		{
			"edge_binding_radius"		"24996"
			"analog_emulation_period"		"29"
		}
	}
	"group"
	{
		"id"		"11"
		"mode"		"four_buttons"
		"bindings"
		{
			"button_a"		"key_press 5, Skill 5"
			"button_b"		"key_press T, Cycle Quest"
			"button_x"		"key_press F, Tertiary"
			"button_y"		"key_press Z, Sheathe"
		}
		"settings"
		{
			"button_size"		"17984"
			"button_dist"		"19980"
		}
	}
	"group"
	{
		"id"		"12"
		"mode"		"scrollwheel"
		"bindings"
		{
			"scroll_clockwise"		"mouse_wheel SCROLL_UP"
			"scroll_counterclockwise"		"mouse_wheel SCROLL_DOWN"
		}
		"settings"
		{
			"scroll_angle"		"88"
		}
	}
	"group"
	{
		"id"		"13"
		"mode"		"scrollwheel"
		"bindings"
		{
			"scroll_clockwise"		"mouse_wheel SCROLL_UP"
			"scroll_counterclockwise"		"mouse_wheel SCROLL_DOWN"
		}
		"settings"
		{
			"scroll_angle"		"88"
		}
	}
	"group"
	{
		"id"		"14"
		"mode"		"dpad"
		"bindings"
		{
			"dpad_north"		"key_press W"
			"dpad_south"		"key_press S"
			"dpad_east"		"key_press D"
			"dpad_west"		"key_press A"
			"click"		"key_press H, Mount"
		}
		"settings"
		{
			"requires_click"		"0"
			"edge_binding_radius"		"24995"
			"haptic_intensity"		"3"
			"analog_emulation_period"		"29"
		}
	}
	"group"
	{
		"id"		"15"
		"mode"		"dpad"
		"settings"
		{
			"edge_binding_radius"		"24999"
			"analog_emulation_period"		"29"
		}
	}
	"group"
	{
		"id"		"16"
		"mode"		"absolute_mouse"
		"bindings"
		{
			"click"		"key_press LEFT_CONTROL, Stealth"
		}
		"settings"
		{
			"trackball"		"0"
			"haptic_intensity"		"3"
			"doubetap_max_duration"		"322"
		}
	}
	"preset"
	{
		"id"		"0"
		"name"		""
		"group_source_bindings"
		{
			"0"		"button_diamond active"
			"11"		"button_diamond active modeshift"
			"1"		"joystick active"
			"7"		"joystick inactive"
			"12"		"joystick inactive"
			"13"		"joystick active modeshift"
			"2"		"left_trackpad active"
			"6"		"left_trackpad inactive"
			"14"		"left_trackpad active modeshift"
			"3"		"right_trackpad active"
			"8"		"right_trackpad inactive modeshift"
			"15"		"right_trackpad inactive modeshift"
			"16"		"right_trackpad active modeshift"
			"4"		"left_trigger active"
			"5"		"right_trigger active"
			"9"		"gyro inactive"
			"10"		"gyro inactive modeshift"
		}
		"switch_bindings"
		{
			"bindings"
			{
				"button_back_right"		"key_press E, Interact"
				"button_back_left"		"key_press RIGHT_BRACKET, Layer 2"
				"button_back_left"		"mode_shift gyro 10"
				"button_back_left"		"mode_shift button_diamond 11"
				"button_back_left"		"mode_shift joystick 13"
				"button_menu"		"key_press M, Map"
				"button_back_left"		"mode_shift left_trackpad 14"
				"button_escape"		"key_press C, Character"
				"button_back_left"		"mode_shift right_trackpad 16"
				"left_bumper"		"key_press SEMICOLON, Dodge"
				"right_bumper"		"key_press BACK_TICK, Weapon Swap"
			}
		}
		"settings"
		{
		}
	}
}
 
Make a website to share templates, get $$$.

Make a desktop client, get more $$$.

I'm having a 10%, thank you.

Someone automatize this please :)

Too much work. A subreddit would probably work better, since people could upvote the good configs, etc.

Can we get recommended Community templates as well in here in the OP fo the more popular games? Just until things settle down with users on Steam making popular ones rise to the top.

The current top ranked CSGO ones are terrible imo.

That's the thing; currently, there doesn't actually seem to be any "recommended" configs unless the developer creates or selects one. You just get a list of all the configs that have been uploaded. I'd assume they're sorted in order of popularity, but that's also assuming Valve is counting, say, time played with each config before it gets modified. There is no voting/review system for community configs.

My experience with community configs so far is that they save a couple button changes, but are sorely lacking. For example, the one community config I saw for Vampire: The Masquerade - Bloodlines had a previous discipline button and a next discipline button, but no means of selecting dialogue options in conversations. It makes the game impossible to actually play.

Here's the one I made tonight for Elder Scrolls Online. Note this wasn't on the Public Test Server where the console controller UI is being added to PC, so it may need tweaked once I try it with the new UI (though shouldn't be anything significant)

Edit - I just noticed ESO is apparently on Steam, but my non-Steam install doesn't upload configs to public, so if you are using the standalone install like I am I guess you'd need this to import the controller config. Also, note that my actual in-game keybinds are not default, but all of the bindings in the template are labeled so you can either switch them to match my keyboard bindings in-game or swap the bindings in the template to your matching in-game keybinds:

I don't play ESO, but is there a particular value in changing from the defaults with regards to using the steam controller? Or did you simply bind them after you had already been using a custom keyboard config? I ask because part of the convenience of using community configs is saving time not having to mess around in config menus before you can play your game. Ideally, the only tweaking that should be necessary after loading up a quality config is sensitivity and vertical look inversion.
 

Wallach

Member
They were changed from default settings for KB/M purposes. I didn't rebind much so I could switch back without much hassle. Default ESO binds are useless for KB/M.
 
They were changed from default settings for KB/M purposes. I didn't rebind much so I could switch back without much hassle. Default ESO binds are useless for KB/M.

I think I had a similar problem with Alpha Protocol. Left Shift is Sprint and Left Control is crouch, so it was very easy to sometimes press those two buttons at the same time. In my case, that's no good, because I use multiple keyboard layouts, and that's the shortcut to switch between them.

So what I did was, I made a config that worked 100% with the default buttons, saved that publicly, then edited one of the buttons to suit my actual bindings, and saved that one privately. I would ask that for the benefit of the rest of us, in the interests of keeping these configs pretty much "plug and play," that you do the same. :)
 

Wallach

Member
I think I had a similar problem with Alpha Protocol. Left Shift is Sprint and Left Control is crouch, so it was very easy to sometimes press those two buttons at the same time. In my case, that's no good, because I use multiple keyboard layouts, and that's the shortcut to switch between them.

So what I did was, I made a config that worked 100% with the default buttons, saved that publicly, then edited one of the buttons to suit my actual bindings, and saved that one privately. I would ask that for the benefit of the rest of us, in the interests of keeping these configs pretty much "plug and play," that you do the same. :)

Yeah that makes sense. Edited my post with a default binding configuration.
 

deadfolk

Member
Does anyone know of a way to get the official or community bindings for a game you don't have on Steam?

For example, say I have The Witcher 2 on GoG, but if I want to run it through Steam and use the SC without having to create a binding from scratch myself, do I need to ask someone with the game on Steam to post it?
 

laxu

Member
Does anyone know of a way to get the official or community bindings for a game you don't have on Steam?

For example, say I have The Witcher 2 on GoG, but if I want to run it through Steam and use the SC without having to create a binding from scratch myself, do I need to ask someone with the game on Steam to post it?

Would like to hear that as well. Steam.db reports things like:
Code:
steamcontrollertemplateindex	3
steamcontrollerconfigfileids	        530753883

for Witcher 3 but I have no idea how you'd use those IDs to find the required templates. When you add a non-steam game to Steam it generates a long ID for it that cannot be tied to an existing game. I send Valve feedback thru their feedback email though I don't expect a response. Just hope that they are aware of this drawback and fix it.
 

laxu

Member
For GTA V non-Steam (Rockstar Club) version, if you want to launch the game from Steam but still use ReShade, then ReShade dll file must be named dxgi.dll. Then Steam overlay and ReShade will work together, otherwise the game will crash.
 

kami_sama

Member
For GTA V non-Steam (Rockstar Club) version, if you want to launch the game from Steam but still use ReShade, then ReShade dll file must be named dxgi.dll. Then Steam overlay and ReShade will work together, otherwise the game will crash.

Eveytime I lauch GTAV from the Steam, if I go to the overlay, the game stops responding. Do you know a way to fix that?
 
Does anyone know of a way to get the official or community bindings for a game you don't have on Steam?

For example, say I have The Witcher 2 on GoG, but if I want to run it through Steam and use the SC without having to create a binding from scratch myself, do I need to ask someone with the game on Steam to post it?

There is no way to get the recommended/community bindings for a non-steam game unless you get them from someone else and paste them into your game's steam controller directory. It's pretty much the whole point of this thread, lol.

Would like to hear that as well. Steam.db reports things like:
Code:
steamcontrollertemplateindex	3
steamcontrollerconfigfileids	        530753883

for Witcher 3 but I have no idea how you'd use those IDs to find the required templates. When you add a non-steam game to Steam it generates a long ID for it that cannot be tied to an existing game. I send Valve feedback thru their feedback email though I don't expect a response. Just hope that they are aware of this drawback and fix it.


Yeah, I wouldn't hold my breath for a fix, either. :/
 

Wallach

Member
I updated my ESO Steam Controller profile slightly, increasing the deadzone of the left pad and switching the previous ESC keybind with Player Interact (I forgot that prompted a radial which would have required awkward right hand movement).

I'm just going to use pastebin to post these from now on: http://pastebin.com/TFzaeAbH
 
Let's see if this works - found my in depth config for the Witcher 3. As I said in the controller thread, this thing has the left grip designated to mode shift, and it changes the left pad, right pad, face buttons and left stick when pressed. The best part about this is changing the right pad to a scroll wheel for menus, and having access to any menu panels /quick saving that you want.

Here's the pdf I made that tries to explain what certain buttons do with the BPM Interface

ca8b.jpg


Code:
"controller_mappings"
{
	"version"		"2"
	"title"		"Witcher 3 Precision Mouse with Mode Shifts (12 Extra Buttons & Scroll Wheel)"
	"description"		"TURN MOUSE SENSITIVITY DOWN IN GAME. Currently the left grip grants mode shifting - I have the right pad as a scroll wheel when shifted, as well as 12 other bindings set to the left pad, stick and face buttons (such as menu panels and quick saving). Casting is set on clicking the right pad"
	"creator"		"76561198010604867"
	"actions"
	{
	}
	"group"
	{
		"id"		"0"
		"mode"		"four_buttons"
		"bindings"
		{
			"button_A"		"key_press LEFT_ALT, Dodge / Interact / Dive"
			"button_A"		"key_press C, Dodge / Interact / Dive"
			"button_A"		"key_press E, Dodge / Interact / Dive"
			"button_B"		"key_press SPACE, Roll"
			"button_X"		"key_press 1, Silver Sword"
			"button_Y"		"key_press 2, Steel Sword"
		}
		"settings"
		{
			"button_size"		"17984"
			"button_dist"		"19968"
		}
	}
	"group"
	{
		"id"		"1"
		"mode"		"dpad"
		"bindings"
		{
			"dpad_north"		"key_press R, Item 1"
			"dpad_south"		"key_press T, Item 3"
			"dpad_east"		"key_press F, Item 2"
			"dpad_west"		"key_press Y, Item 4"
		}
		"settings"
		{
			"deadzone"		"5000"
			"edge_binding_radius"		"24996"
			"analog_emulation_period"		"29"
		}
	}
	"group"
	{
		"id"		"2"
		"mode"		"joystick_camera"
		"bindings"
		{
			"click"		"xinput_button JOYSTICK_RIGHT"
		}
		"settings"
		{
			"curve_exponent"		"2"
			"swipe_duration"		"0"
			"haptic_intensity"		"3"
			"output_joystick"		"2"
			"sensitivity_vert_scale"		"175"
			"anti_deadzone"		"12287"
			"anti_deadzone_buffer"		"10649"
			"joystick_smoothing"		"1"
			"sensitivity"		"1000"
		}
	}
	"group"
	{
		"id"		"3"
		"mode"		"joystick_move"
		"bindings"
		{
			"click"		"xinput_button JOYSTICK_LEFT, Call Horse"
		}
		"settings"
		{
			"edge_binding_radius"		"24995"
			"sensitivity"		"97"
		}
	}
	"group"
	{
		"id"		"4"
		"mode"		"trigger"
		"bindings"
		{
			"click"		"mouse_button RIGHT, Parry "
			"edge"		"key_press E, Select"
		}
		"settings"
		{
			"adaptive_threshold"		"0"
		}
	}
	"group"
	{
		"id"		"5"
		"mode"		"trigger"
		"bindings"
		{
			"click"		"mouse_button LEFT, Attack"
		}
		"settings"
		{
			"edge_binding_radius"		"18839"
			"haptic_intensity"		"1"
			"adaptive_threshold"		"0"
		}
	}
	"group"
	{
		"id"		"6"
		"mode"		"absolute_mouse"
		"bindings"
		{
			"click"		"key_press Q"
			"doubletap"		"key_press ESCAPE"
		}
		"settings"
		{
			"sensitivity"		"1000"
			"haptic_intensity"		"3"
			"rotation"		"30"
			"friction"		"1"
			"mouse_smoothing"		"37"
			"doubetap_max_duration"		"320"
		}
	}
	"group"
	{
		"id"		"7"
		"mode"		"joystick_move"
		"settings"
		{
			"edge_binding_radius"		"24995"
			"haptic_intensity"		"1"
		}
	}
	"group"
	{
		"id"		"8"
		"mode"		"joystick_camera"
		"settings"
		{
			"output_joystick"		"1"
			"sensitivity"		"99"
		}
	}
	"group"
	{
		"id"		"9"
		"mode"		"dpad"
		"settings"
		{
			"edge_binding_radius"		"24999"
			"analog_emulation_period"		"29"
		}
	}
	"group"
	{
		"id"		"10"
		"mode"		"four_buttons"
		"bindings"
		{
			"button_A"		"key_press O, Crafting"
			"button_B"		"key_press B, Bestiary"
			"button_X"		"key_press H, Gwent Deck"
			"button_Y"		"key_press L, Alchemy"
		}
		"settings"
		{
			"button_size"		"17984"
			"button_dist"		"19970"
		}
	}
	"group"
	{
		"id"		"11"
		"mode"		"dpad"
		"bindings"
		{
			"dpad_north"		"key_press W"
			"dpad_south"		"key_press S"
			"dpad_east"		"key_press D"
			"dpad_west"		"key_press A"
			"click"		"key_press Z, Lock On / Change Objective"
			"click"		"key_press V, Lock On / Change Objective"
		}
		"settings"
		{
			"edge_binding_radius"		"21687"
			"haptic_intensity"		"3"
			"analog_emulation_period"		"29"
		}
	}
	"group"
	{
		"id"		"12"
		"mode"		"four_buttons"
		"bindings"
		{
			"button_Y"		"key_press F5, Quick Save"
		}
		"settings"
		{
			"haptic_intensity"		"3"
			"button_size"		"17994"
			"button_dist"		"19994"
		}
	}
	"group"
	{
		"id"		"13"
		"mode"		"scrollwheel"
		"bindings"
		{
			"scroll_clockwise"		"mouse_wheel SCROLL_DOWN"
			"scroll_counterclockwise"		"mouse_wheel SCROLL_UP"
		}
		"settings"
		{
			"scroll_angle"		"137"
			"haptic_intensity"		"3"
		}
	}
	"group"
	{
		"id"		"14"
		"mode"		"scrollwheel"
		"settings"
		{
			"scroll_angle"		"89"
		}
	}
	"group"
	{
		"id"		"15"
		"mode"		"dpad"
		"bindings"
		{
			"dpad_north"		"key_press F5, Quick Save"
			"dpad_south"		"key_press X, Roach"
			"dpad_east"		"key_press TAB, Character Focus (Map)"
			"dpad_west"		"key_press LEFT_CONTROL, Walk Speed"
		}
		"settings"
		{
			"edge_binding_radius"		"24996"
			"analog_emulation_period"		"29"
		}
	}
	"group"
	{
		"id"		"16"
		"mode"		"scrollwheel"
		"bindings"
		{
			"scroll_wheel_list_0"		"mouse_wheel SCROLL_DOWN"
		}
		"settings"
		{
			"scroll_angle"		"166"
		}
	}
	"group"
	{
		"id"		"17"
		"mode"		"absolute_mouse"
		"settings"
		{
			"doubetap_max_duration"		"324"
		}
	}
	"group"
	{
		"id"		"18"
		"mode"		"four_buttons"
		"bindings"
		{
			"button_A"		"key_press N, Meditate"
			"button_B"		"key_press B, Bestiary"
			"button_X"		"key_press H, Gwent"
			"button_Y"		"key_press H, Quests"
		}
		"settings"
		{
			"button_size"		"17994"
			"button_dist"		"19994"
		}
	}
	"group"
	{
		"id"		"19"
		"mode"		"dpad"
		"bindings"
		{
			"dpad_north"		"key_press J, Quests"
			"dpad_south"		"key_press N, Meditate"
			"dpad_east"		"key_press I, Inventory"
			"dpad_west"		"key_press K, Character"
		}
		"settings"
		{
			"edge_binding_radius"		"24995"
			"analog_emulation_period"		"29"
		}
	}
	"preset"
	{
		"id"		"0"
		"name"		""
		"group_source_bindings"
		{
			"0"		"button_diamond active"
			"9"		"button_diamond inactive modeshift"
			"10"		"button_diamond active modeshift"
			"1"		"left_trackpad active"
			"12"		"left_trackpad inactive modeshift"
			"14"		"left_trackpad inactive modeshift"
			"15"		"left_trackpad active modeshift"
			"2"		"right_trackpad inactive"
			"6"		"right_trackpad active"
			"7"		"right_trackpad inactive modeshift"
			"8"		"right_trackpad inactive modeshift"
			"13"		"right_trackpad active modeshift"
			"3"		"joystick inactive"
			"11"		"joystick active"
			"16"		"joystick inactive modeshift"
			"17"		"joystick inactive modeshift"
			"18"		"joystick inactive modeshift"
			"19"		"joystick active modeshift"
			"4"		"left_trigger active"
			"5"		"right_trigger active"
		}
		"switch_bindings"
		{
			"bindings"
			{
				"button_back_right"		"key_press LEFT_SHIFT, Sprint"
				"button_menu"		"key_press ESCAPE, Pause Menu"
				"button_escape"		"xinput_button START, Game Menu"
				"right_bumper"		"xinput_button SHOULDER_RIGHT, Throw Item / Menu Right"
				"left_bumper"		"xinput_button SHOULDER_LEFT, Quick Select / Menu Left"
				"button_back_left"		"key_press KEYPAD_6"
				"button_back_left"		"mode_shift joystick 19"
				"button_back_left"		"mode_shift button_diamond 10"
				"button_back_left"		"mode_shift left_trackpad 15"
				"button_back_left"		"mode_shift right_trackpad 13"
			}
		}
		"settings"
		{
		}
	}
}
"cache_data"
{
	"lastmodified"		"Tue, 20 Oct 2015 04:13:59 GMT"
}
 

Dr Dogg

Member
I think I've settled on my most comfortable settings for Mass Effect 2/3. Flow very well during exploration and combat on foot or in a vehicle in both 2 & 3. Only issues is the Bypass mini game with is close to impossible on the Steam Controller unless you could adapt the time between selecting nodes. I've uploaded them to the Community for Mass Effect 2 but if you want to try them out for Mass Effect 3 (seeing as it's Origin only) here's the settings bellow.

Code:
"controller_mappings"
{
	"version"		"2"
	"title"		"Mass Effect 2 Bindings"
	"description"		"#Description"

	"group"
	{
		"id"		"0"
		"mode"		"four_buttons"
		"bindings"
		{
			"button_A"		"key_press C, Order Form Up"
			"button_B"		"mouse_wheel SCROLL_DOWN, Next Weapon"
			"button_X"		"key_press R, Reload"
			"button_Y"		"key_press X, Previous Weapon"
		}
		"settings"
		{
			"hold_repeat_inverval"		"99"
			"button_size"		"17984"
			"button_dist"		"19984"
		}
	}
	"group"
	{
		"id"		"1"
		"mode"		"dpad"
		"bindings"
		{
			"dpad_north"		"key_press 2, Quick Slot 2"
			"dpad_south"		"key_press 4, Quick Slot4"
			"dpad_east"		"key_press 3, Quick Slot 3"
			"dpad_west"		"key_press 1, Quick Slot 1"
		}
		"settings"
		{
			"overlap"		"0"
			"hold_repeat_inverval"		"99"
			"deadzone"		"1723"
			"edge_binding_radius"		"24996"
			"analog_emulation_period"		"29"
		}
	}
	"group"
	{
		"id"		"2"
		"mode"		"absolute_mouse"
		"bindings"
		{
			"click"		"key_press SPACE, Use / Cover / Sprint"
		}
		"settings"
		{
			"sensitivity"		"40"
			"rotation"		"15"
			"sensitivity_vert_scale"		"58"
			"acceleration"		"2"
			"edge_spin_velocity"		"773"
			"edge_spin_radius"		"25394"
			"doubetap_max_duration"		"320"
		}
	}
	"group"
	{
		"id"		"3"
		"mode"		"dpad"
		"bindings"
		{
			"dpad_north"		"key_press W, Move Forward"
			"dpad_south"		"key_press S, Move Back"
			"dpad_east"		"key_press D, Move Right"
			"dpad_west"		"key_press A, Move Left"
		}
		"settings"
		{
			"requires_click"		"0"
			"hold_repeat_inverval"		"99"
			"edge_binding_radius"		"24995"
			"analog_emulation_period"		"29"
		}
	}
	"group"
	{
		"id"		"4"
		"mode"		"trigger"
		"bindings"
		{
			"edge"		"mouse_button RIGHT"
		}
		"settings"
		{
			"hold_repeat_inverval"		"99"
		}
	}
	"group"
	{
		"id"		"5"
		"mode"		"trigger"
		"bindings"
		{
			"edge"		"mouse_button LEFT"
		}
		"settings"
		{
			"hold_repeat_inverval"		"99"
		}
	}
	"group"
	{
		"id"		"6"
		"mode"		"dpad"
		"settings"
		{
			"overlap"		"0"
			"edge_binding_radius"		"24995"
			"analog_emulation_period"		"29"
		}
	}
	"group"
	{
		"id"		"7"
		"mode"		"four_buttons"
		"settings"
		{
			"button_size"		"17998"
			"button_dist"		"19998"
		}
	}
	"group"
	{
		"id"		"8"
		"mode"		"dpad"
		"bindings"
		{
			"dpad_north"		"key_press 6, Quick Slot 6"
			"dpad_south"		"key_press 8, Quick Slot 8"
			"dpad_east"		"key_press 7, Quick Slot 7"
			"dpad_west"		"key_press 5, Quick Slot 5"
		}
		"settings"
		{
			"overlap"		"0"
			"edge_binding_radius"		"24996"
			"analog_emulation_period"		"29"
		}
	}
	"preset"
	{
		"id"		"0"
		"name"		""
		"group_source_bindings"
		{
			"0"		"button_diamond active"
			"1"		"left_trackpad active"
			"7"		"left_trackpad inactive modeshift"
			"8"		"left_trackpad active modeshift"
			"2"		"right_trackpad active"
			"6"		"right_trackpad inactive modeshift"
			"3"		"joystick active"
			"4"		"left_trigger active"
			"5"		"right_trigger active"
		}
		"switch_bindings"
		{
			"bindings"
			{
				"left_bumper"		"key_press LEFT_SHIFT, Command HUD"
				"button_escape"		"key_press ESCAPE, Menu"
				"right_click"		"mode_shift right_trackpad 6"
				"right_click"		"mode_shift left_trackpad 8"
				"right_bumper"		"key_press F, Melee"
				"button_back_left"		"key_press Q, Order Henchman 1"
				"button_back_right"		"key_press E, Order Henchman 2"
				"button_menu"		"key_press M, Map"
			}
		}
		"settings"
		{
		}
	}
}

Should be fairly self explanatory from this layout with the only mode shift is for the left trackpad which will shift to Quick Slots 5-8 when the button on the right trackpad is depressed.
 

Miff

Member
It looks like a cache of the configs you have used are stored locally \Steam\userdata\xxxxx\config\controller_configs\workshop\

Also I think this is potentially incomplete or outdated, but if editing manually a reference list of values for input types, settings, etc is here: http://pastebin.com/CCMzfHYt -- there's probably a better source for this.
 

belmonkey

Member
I think I managed to make a decent PSO2 controller setup:

"controller_mappings"
{
"version" "2"
"title" "belmonkey's PSO2 Bindings"
"description" "A controller setup similar to the Xbox 360 version, but uses the left bumper as a modifier to turn the XYBA buttions into numpad 1,2,3, and 4 respectively, whilst turning the left trackpad directions into numpad 5 (left), numpad 6 (up), numpad 7 (right) and numpad 8 (down). Feel free to tweak to a different setup that may feel better for you. Note**** Must change a few in-game keyboard bindings for this to work. In the [Action 1] tab, set Open Select Menu = " ' " (apostrophe) . In the [Window] tab, set Confirm = Space and Cancel = E."
"creator" "76561198047190106"
"group"
{
"id" "0"
"mode" "four_buttons"
"bindings"
{
"button_A" "key_press SPACE, Jump / confirm"
"button_B" "key_press E, Access / cancel"
"button_X" "mouse_button LEFT, Normal attack"
"button_Y" "mouse_button RIGHT, PA 1"
}
"settings"
{
"hold_repeat_inverval" "99"
"button_size" "17994"
"button_dist" "19994"
}
}
"group"
{
"id" "1"
"mode" "dpad"
"bindings"
{
"dpad_north" "key_press UP_ARROW, Menu navigation"
"dpad_south" "key_press DOWN_ARROW, Menu navigation"
"dpad_east" "key_press RIGHT_ARROW, Menu navigation"
"dpad_west" "key_press LEFT_ARROW, Menu navigation"
}
"settings"
{
"hold_repeat_inverval" "99"
"deadzone" "5000"
"edge_binding_radius" "24996"
}
}
"group"
{
"id" "2"
"mode" "absolute_mouse"
"settings"
{
"sensitivity" "19"
"rotation" "15"
"friction_vert_scale" "200"
"acceleration" "1"
"doubetap_max_duration" "320"
}
}
"group"
{
"id" "3"
"mode" "dpad"
"bindings"
{
"dpad_north" "key_press W, Move Forward"
"dpad_south" "key_press S, Move Back"
"dpad_east" "key_press D, Move Right"
"dpad_west" "key_press A, Move Left"
"click" "key_press LEFT_SHIFT, Sprint"
}
"settings"
{
"requires_click" "0"
"hold_repeat_inverval" "99"
"edge_binding_radius" "24995"
}
}
"group"
{
"id" "4"
"mode" "trigger"
"bindings"
{
"click" "key_press Q, Lock on"
}
"settings"
{
"hold_repeat_inverval" "99"
}
}
"group"
{
"id" "5"
"mode" "trigger"
"bindings"
{
"click" "key_press X, Evade"
}
"settings"
{
"hold_repeat_inverval" "99"
}
}
"group"
{
"id" "6"
"mode" "four_buttons"
"bindings"
{
"button_A" "key_press 4, Numpad 4"
"button_B" "key_press 3, Numpad 3"
"button_X" "key_press 1, Numpad 1"
"button_Y" "key_press 2, Numpad 2"
}
}
"group"
{
"id" "7"
"mode" "four_buttons"
"bindings"
{
"button_A" "key_press 8, Numpad 8"
"button_B" "key_press 7, Numpad 7"
"button_X" "key_press 5, Numpad 5"
"button_Y" "key_press 6, Numpad 6"
}
}
"group"
{
"id" "8"
"mode" "four_buttons"
"bindings"
{
"button_A" "key_press S"
"button_B" "key_press D"
"button_X" "key_press A"
"button_Y" "key_press W"
}
}
"group"
{
"id" "9"
"mode" "mouse_joystick"
}
"group"
{
"id" "10"
"mode" "joystick_move"
"settings"
{
"deadzone_shape" "1"
}
}
"group"
{
"id" "11"
"mode" "trigger"
}
"preset"
{
"id" "0"
"name" ""
"group_source_bindings"
{
"0" "button_diamond active"
"6" "button_diamond active modeshift"
"1" "left_trackpad active"
"7" "left_trackpad active modeshift"
"2" "right_trackpad active"
"3" "joystick inactive"
"8" "joystick inactive"
"9" "joystick inactive"
"10" "joystick active"
"4" "left_trigger active"
"5" "right_trigger active"
"11" "right_trigger active modeshift"
}
"switch_bindings"
{
"bindings"
{
"right_bumper" "key_press LEFT_SHIFT, Toggle weapon"
"button_escape" "key_press ESCAPE, Menu"
"left_bumper" "mode_shift button_diamond 6"
"left_bumper" "mode_shift left_trackpad 7"
"button_menu" "key_press SINGLE_QUOTE, Shortcut menu"
"button_back_right" "key_press R, Subpalette select"
"button_back_left" "key_press Z"
}
}
"settings"
{
}
}
}

It's similar to the 360 pad, but it has 8 hotkeys readily available compared to the 360's 1 hotkey that requires scrolling between the others. I don't know if it any good for classes that might require aiming though.

Also, you have to change a few in-game keyboard bindings for this to work. In the [Action 1] tab, set Open Select Menu = " ' " (apostrophe) . In the [Window] tab, set Confirm = Space and Cancel = E
 
Top Bottom