Steam Controller Integration

Post your ideas and suggestions how to improve the game.
Post Reply
Coffee2Code
Inserter
Inserter
Posts: 21
Joined: Fri Nov 24, 2017 4:56 pm
Contact:

Steam Controller Integration

Post by Coffee2Code » Sat Nov 25, 2017 4:13 pm

TL;DR
Add Steam Controller integration to the game, add an IGA file, create a Recommended Configuration, add support for context based switching, maybe haptic feedback support? (Car driving is a mess with the controller now :( )

The Steam Controller is NOT a regular controller.


What ?
I'd like to see a tighter integration with the Steam Controller as this game is perfect to just sit on the couch and play via Steam Link and Steam Controller.
There are a few things that can be done.
Native Mode
In Native mode, the game receives input data directly from the Configurator in the form of "actions." The idea here is that the game itself has no knowledge of what actual inputs are driving said actions, simply that the actions are happening. All configuration and control settings are relegated to the Steam Controller Configurator. That said, the game can request information via a special API call about which physical controls are bound to which actions purely for the purpose of displaying appropriate on-screen glyphs.
1. add labeled actions via an IGA file, this allows us to select the action instead of manually having to bind the right keys from the keyboard keymap.
(Link to IGA manual: https://partner.steamgames.com/doc/feat ... r/iga_file )
This would make customizing the configuration also way easier.
Image

2. Create a Recommended Configuration, the community can also fine tune this, then you guys can upload it, so that when people play Factorio, the Recommended Configuration is automatically used for the controller.

3. Context Based Switching: https://partner.steamgames.com/doc/api/ ... eActionSet
This can be used to change button binds depending on what is happening in the game, allowing for more buttons to be bound on contextual actions, such as building, targeting enemies, using menus, driving, etc.

4. Haptic Feedback / Rumble support: https://partner.steamgames.com/doc/api/ ... apticPulse
This can be used to add a feeling to the game when using the steam controller, e.g as the cursor moves over toolbelt slots, when building in a location is impossible, when cutting down trees or mining, when shooting guns, etc.
You can even make people feel each bullet being shot by the Character, each hit on a material the Character makes, each bite or hit from a biter.
Rumbling for alerts, e.g. turrets shooting give a light rumble, stuff being destroyed gives a more pronounced buzz

5. Change the way cars handle.
WASD for driving is nearly impossible with the controller unless it's rebound to accelerating/breaking with the left pad by moving up or down, and steering with the right pad, normally it's undetectable, but when contextual switching is added, this becomes a possibility.
Otherwise, joystick support would need to be added, but this is trivial with the Steam Controller API.
Why ?
This doesn't only add support for the Steam Controller, it also adds support for DS4 and XBone controller!
Also, it increases the playability both on the couch and for people having trouble using a mouse and keyboard.
This game is awesome to play on the couch, and luckily already possible due to the UI Scale option, but a more tight integration with the Steam Controller would be a godsend.
Especially driving cars would become much easier, and tactile feedback really helps with the immersion :)

This post has been shared in the subreddit also!
Link to post in r/factorio
Last edited by Coffee2Code on Sun Nov 26, 2017 2:24 am, edited 3 times in total.

Koub
Global Moderator
Global Moderator
Posts: 4680
Joined: Fri May 30, 2014 8:54 am
Contact:

Re: Steam Controller Integration

Post by Koub » Sat Nov 25, 2017 7:45 pm

I wonder if I should merge this topic with the 5-6 previous topics asking for Steam controller support.
Koub - Please consider English is not my native language.

Coffee2Code
Inserter
Inserter
Posts: 21
Joined: Fri Nov 24, 2017 4:56 pm
Contact:

Re: Steam Controller Integration

Post by Coffee2Code » Sat Nov 25, 2017 7:49 pm

Koub wrote:I wonder if I should merge this topic with the 5-6 previous topics asking for Steam controller support.
Controller support ain't Steam Controller support though.
Also, no other thread is specifically asking for contextual action sets or In-Game Actions support


Especially the IGA and Context stuff would be very helpful.

Heck, I'd implement it myself if I could.
Last edited by Coffee2Code on Sat Nov 25, 2017 9:14 pm, edited 1 time in total.

IronCartographer
Filter Inserter
Filter Inserter
Posts: 296
Joined: Tue Jun 28, 2016 2:07 pm
Contact:

Re: Steam Controller Integration

Post by IronCartographer » Sat Nov 25, 2017 8:19 pm

As someone with a steam controller this might be useful. I've heard of successes with custom configurations already, but didn't know there was more a game could do to support the advanced features (aside from haptics, anyway). Actually...I take that back. It's more that the game integrating context switching simplifies the existing ability to change action sets, right?

All that said, it's hard to imagine non-Steam controllers being very effective.

Coffee2Code
Inserter
Inserter
Posts: 21
Joined: Fri Nov 24, 2017 4:56 pm
Contact:

Re: Steam Controller Integration

Post by Coffee2Code » Sat Nov 25, 2017 9:08 pm

IronCartographer wrote:As someone with a steam controller this might be useful. I've heard of successes with custom configurations already, but didn't know there was more a game could do to support the advanced features (aside from haptics, anyway). Actually...I take that back. It's more that the game integrating context switching simplifies the existing ability to change action sets, right?

All that said, it's hard to imagine non-Steam controllers being very effective.
Yeah, especially because the Steam Controller has touchpads as main input devices, it's very effective for a game like Factorio.
The IGA stuff helps with people creating their own configurations, the game doesn't have to listen for an exact key, but an action name: https://partner.steamgames.com/doc/api/ ... ionOrigins

As for the context switching stuff, this indeed changes the action sets based on context, be it driving, shooting or building, heck, even the map could have a different set.


Koub
Global Moderator
Global Moderator
Posts: 4680
Joined: Fri May 30, 2014 8:54 am
Contact:

Re: Steam Controller Integration

Post by Koub » Sun Nov 26, 2017 8:41 am

These are very related : howto's and suggestions around Steam Controller integration/support
viewtopic.php?f=6&t=53408
viewtopic.php?f=69&t=17126
viewtopic.php?f=5&t=17410
Koub - Please consider English is not my native language.

Coffee2Code
Inserter
Inserter
Posts: 21
Joined: Fri Nov 24, 2017 4:56 pm
Contact:

Re: Steam Controller Integration

Post by Coffee2Code » Sun Nov 26, 2017 1:20 pm

Koub wrote:These are very related : howto's and suggestions around Steam Controller integration/support
viewtopic.php?f=6&t=53408
viewtopic.php?f=69&t=17126
viewtopic.php?f=5&t=17410
None are asking for IGAs and Action Set Switching, they're asking for controller support.
Steam Controller != a Regular Controller
So this is an unique thread on itself.

Also, Legacy Bindings only gets us so far, we have to look up the keymap and bind the things ourselves, we're bound to keyboard shortcuts instead of IGAs

The controller also can't automatically use different bindings based on context.


Daeruun
Burner Inserter
Burner Inserter
Posts: 16
Joined: Thu May 04, 2017 8:37 pm
Contact:

Re: Steam Controller Integration

Post by Daeruun » Wed Nov 29, 2017 11:24 pm

Yay!

As far as I remember Klonan provides a suggested Konfig - I'm actually using it, I think.
But I changed some bindings ( zoom and some hotkeys )

but with context sensitive buttons the steam controller would be rocking on the couch!

Coffee2Code
Inserter
Inserter
Posts: 21
Joined: Fri Nov 24, 2017 4:56 pm
Contact:

Re: Steam Controller Integration

Post by Coffee2Code » Thu Nov 30, 2017 12:44 am

Daeruun wrote:Yay!

As far as I remember Klonan provides a suggested Konfig - I'm actually using it, I think.
But I changed some bindings ( zoom and some hotkeys )

but with context sensitive buttons the steam controller would be rocking on the couch!
I'm actually using a modified version of Donovan's v2

Coffee2Code
Inserter
Inserter
Posts: 21
Joined: Fri Nov 24, 2017 4:56 pm
Contact:

Re: Steam Controller Integration

Post by Coffee2Code » Fri Dec 08, 2017 9:40 pm

Coffee2Code wrote:I will buy you guys a controller if that helps with implementing it.
Devs, would this help out?

Post Reply

Return to “Ideas and Suggestions”

Who is online

Users browsing this forum: No registered users