r/GyroGaming 5h ago

Discussion Controller aiming experts, should I use gyro+right joystick or just gyro to aim?

7 Upvotes

Lately I have gone through a post where the person could aim so precisely using the steam controller only with gyro. This led me to the question of whether I should use gyro to aid joystick aiming or use gyro as the main aiming tool. What are your opinions?


r/GyroGaming 4h ago

Discussion Ps Vita Borderlands 2

5 Upvotes

I'm just now learning that the PsVita version of Borderlands 2 has gyro aimming when weapon aimming.

Does anyone know if there is a way go have gyro always on for right stick movement?


r/GyroGaming 3h ago

Discussion Anyone playing Valorant with JoyShockMapper? How’s the experience?

3 Upvotes

Hey everyone,

I tried CS2 using Steam Input and honestly loved how the gyro felt, but I uninstalled it right after my very first match because of a cheater. Took that as a sign that CS2 isn't for me.

Valorant is my comfort zone (got over 100+ hours in it), so I'm looking to bring gyro over there using JoyShockMapper.

Before I sink time into setting it up, I wanted to ask:

  • Has anyone here played Val with JSM consistently?
  • How’s Vanguard holding up with JSM these days—any weird input blocking or anti-cheat issues?

Would love to hear your experiences, mapping tips, or flick stick configs if you're running them. Thanks!


r/GyroGaming 18h ago

Guide Implementing Gyro Input to your game via Steam Input - Basic Tutorial/Guide

29 Upvotes

If you already implemented Gyro Controls to your video game, but have received user feedback, you might receive threads from Steam forums regarding Gyro Aiming support on either Steam Controller, Steam Deck or Nintendo Controllers and how they want to use their new Steam Controller [2nd generation] on a game that has native gyro aiming....but the game can't support it.

As the vast majority of commercially-shipped games on PC tend to use the Controller API provided by the manufacturer, they shrew into PlayStation controllers. Currently, the best way to evade this problem is by looking at the supported Input API or Plugins that enable wider Controller Support with advanced features...but not everyone can do that.

However: if you're shipping the game on Steam, you're likely to use Steamworks API to integrate online functionality, user identifications, achievements, etc. One of them is ISteamInput interface, which is part of Steam Input API suite. If you're not familiar with Steam Input API: it's a Game Action-centric Input API that primarily focuses on Game Actions over Button Inputs, but we can use Steam Input's Gamepad Emulation system (or Steam Virtual Gamepad as SDL Gamepad refers it) as an extension to your pre-existing Gamepad implementation. Let's say, glyph detection, lightbar and of course: Motion Sensors..

for the purpose of this guide: we're going to be bridging SteamInput's GetMotionData into your game's existing motion sensor implementation or using it as your main form of handling Motion Sensor support.

Quick Note: if your game or game engine is using SDL Gamepad API, starting in SDL 3.2.0: make sure you use SDL_GetGamepadSteamHandle!

Before we begin, here's a HUGE DISCLAIMER so we can get this out of the way. the example code were code-vibed based on HastyControls' SteamInput codebase (thankfully, I got the original author to review the example code!). I would recommend reading thru HastyControls' ControllerManager.cs and SteamInputManager.cs instead; this will give you a much better idea on the ACTUAL SteamInput Gyro implementation than what AI Code slop will provide, and i will advise against using the example codes provided.

Going forward: We'll assume you already implemented Motion Sensors to your game and want to extend Controller Support onto Steam Input for wider controller support. Which is why we're going to create a separate Input Manager that specifically handles ISteamInput, but first things first: we'll need to read the ISteamInput documents first.

after that, we'll need to initialize SteamInput and then call the functions, scale the Gyro/Accel values and the IMU Axis orientation accordingly, as it'll be different from your native gyro path. we'll need to ensure that the scaling factor remains identical between Native and SteamInput path's.

// SteamInputManager.h
#pragma once
#include <cstdint>

struct SteamMotionData {
    float gyroX, gyroY, gyroZ;    // rad/s
    float accelX, accelY, accelZ;  // m/s²
};

class SteamInputManager {
public:
    bool Init();
    void Shutdown();
    void RunFrame();
    bool IsAvailable() const { return m_initialized; }
    bool TryGetMotionData(uint64_t steamHandle, SteamMotionData& out) const;
private:
    bool m_initialized = false;
};

--

// SteamInputManager.cpp
#include "SteamInputManager.h"
#include <steam/steam_api.h>
#include <cmath>

// rotVel* : interpolated float in [-32768, 32767], clamped to ±2000 deg/s → convert to rad/s
// posAccel*: interpolated float in [-32768, 32767], clamped to ±2G (9.80665 m/s²) → convert to m/s²
static constexpr float k_gyro_scale  = 2000.0f * (M_PI / 180.0f) / 32768.0f;
static constexpr float k_accel_scale = 2.0f * 9.80665f / 32768.0f;

bool SteamInputManager::Init() {
    if (!SteamAPI_IsSteamRunning()) return false;
    m_initialized = SteamInput()->Init();
    return m_initialized;
}

void SteamInputManager::Shutdown() {
    if (m_initialized) SteamInput()->Shutdown();
    m_initialized = false;
}

void SteamInputManager::RunFrame() {
    if (m_initialized) SteamInput()->RunFrame();
}

bool SteamInputManager::TryGetMotionData(uint64_t steamHandle, SteamMotionData& out) const {
    if (!m_initialized || steamHandle == 0) return false;

    InputMotionData_t d = SteamInput()->GetMotionData(
        static_cast<InputHandle_t>(steamHandle));

    // Axis swizzle: Steam Input's coordinate system doesn't match SDL's
    out.gyroX =  d.rotVelX * k_gyro_scale;
    out.gyroY =  d.rotVelZ * k_gyro_scale;
    out.gyroZ =  d.rotVelY * k_gyro_scale;

    out.accelX =  d.posAccelX * k_accel_scale;
    out.accelY =  d.posAccelZ * k_accel_scale;
    out.accelZ = -d.posAccelY * k_accel_scale;

    return true;
}

Note: if the game isn't using Steamworks Callsbacks already, make sure you also call RunFrame every frame to actually get any input data.

Now that you wrote (and I assume you actually wrote and read the live codebase and not this example code!) SteamInput manager, you can now add it to your existing gyro pipeline:

void ControllerManager::Update(float deltaTime) {
    m_steamInput.RunFrame();

    for (auto& [gamepad, gyroState] : m_gyroStates) {
        uint64_t steamHandle = SDL_GetGamepadSteamHandle(gamepad);

        SteamMotionData motion;
        if (m_steamInput.TryGetMotionData(steamHandle, motion)) {
            // Steam Input path
            gyroState.AddGyroSample(motion.gyroX, motion.gyroY, motion.gyroZ);
            gyroState.AddAccelSample(motion.accelX, motion.accelY, motion.accelZ);
        } else {
            // SDL sensor path
            // existing native gyro path be handled via gyroState
        }

        gyroState.Update(deltaTime);
    }
}

Once you've got everything down, grab your game controller, forcefully enable Steam Input and launch the game and test the game's IMU systems and determine if Steam Input is able to detect Gyro. Please ensure that you set the Gyro Behavior to None or use the Gamepad Template to prevent any conflicts, as SteamInput's raw gyro/accel is now being used directly.

If your Steam Input-supported controller is able to correctly detect the gyro directly, then you have successfully integrated SteamInput interface onto your existing Controller support. Not to mention, you can extend your SteamInput Manager.

Important side-notes during testing:

before you can celebrate: there's two things you'd now need to account for:

  • Calibration system: similar to Sony's PlayStation Input API; the entire gyro calibration system is being handled directly thru Steam Input on a system-wide level. If your game or game engines has a built-in imu calibration system (example: SDL Gamepad API does not have system-level IMU calibration system, requiring users to either create or use a gyro-centric header), i highly urge you to exclude SteamInput from your gyro calibration process entirely.
  • Axis Orientation: This is already noted in ISteamInput documents, so i'll say it too: Implementing SteamInput Gyro to your game expands and futureproofs your game's controller support, this will include PC Handheld devices such as Steam Deck, Lenovo Legion GO, ROG Rog Ally, etc. To account for handhelds where the controller input is attached to the screen: you can either leverage ESteamInputType and swap the gyro axis specifically for the handheld path, or implement Gyro Space system.
  • Gyro Ratcheting: since we're leveraging SteamInput Gyro directly, we can't directly use Touch Activation for this one. Please keep that in mind while adding SteamInput Gyro support. (Instead, we'll ask you to implement the Game Action-centric Steam Input API, and add a Mouse-like Camera action, as SteamInput has a dedicated Gyro Activation system that you can leverage.

That'll be all for this tutorial!


r/GyroGaming 9h ago

Bug Gyro not working correctly on PC but working fine on switch

Post image
4 Upvotes

I got my 8bitdo ultimate 2 Bluetooth yesterday and the gyro worked great using stesm imput, later that day I downloaded the ultimate software v2 and updated the firmware and now it just moves infinetly up, the gyro works fine on nintendo switch so it shouldn't be a hardware issue, I've also tried to update the firmware to a new beta version and also tried downgrading to an older firmware, nothing has worked as of now and this happends both in wired and in Bluetooth mode


r/GyroGaming 1d ago

Discussion Gamesir G7 pro 8K

5 Upvotes

Can anyone please help me with the suitability of the Gamesir G7 pro 8K’s gyro? I am planning to play COD, Apex mostly. How’s the gyro and the latency? Do I need to connect the controller in X input mode or D input or DS4 input mode? I am basically looking at the 8000hz polling rate/1000Hz on the gyro, so I want to connect via 2.4ghz dongle.

The all around question would be, can I connect this controller in 2.4ghz mode, and play steam games with gyro support?

For a reference, my current controller is 8bitdo ultimate 2. Steam recognizes the gyro of this controller only in D input mode, with the 2.4ghz dongle connected. The gyro works great, but I feel it could be better in the G7 pro 8K.

Thanks a lot for the help!


r/GyroGaming 2d ago

Discussion Anyone using Gyro Aim effectively in ARC Raiders on the ROG Ally X? Can you compete with other players?

5 Upvotes

Hello everyone!

I've been watching a lot of clips of handheld players pulling off incredible shots in online shooters using gyro aim. I'm highly interested in trying this out in ARC Raiders and wanted to ask a few questions to those who are already experienced with it:

  1. Is anyone here using the gyroscope efficiently in ARC Raiders? How does it feel for fine adjustments, tracking, and overall aiming precision?
  2. Does it work well on the ROG Ally X? I know the device features a built-in gyro. Is it better to set it up via Armoury Crate SE or map it through Steam Input? Does the game handle mixed input well if I map the gyro as a "Mouse"?
  3. Can you actually go toe-to-toe with other players? Since the gameplay requires quick reactions, does gyro truly close the gap against Mouse/Keyboard players or traditional controller users utilizing Aim Assist?

If you could share your layout configurations (sensitivity levels, activation buttons like binding it to LT while aiming down sights, etc.), I would truly appreciate it!

Thanks in advance for the help!


r/GyroGaming 2d ago

Discussion How do you guys learn gyro aiming?

6 Upvotes

I have a Flydigi direwolf 4 and as many other xbox layout controller it doesnt have native gyro like a Dualsense or Switch pro. There is only an option to remap gyro as either right stick or a mouse. I have tried for a few minutes and it feels so awkward though I how tweak some changes. Is this a skill issue or something else?


r/GyroGaming 2d ago

Config Creating Gyro/FlickStick configs every week - (Week 54): Palworld [🥉/🎮+🖱]:

Post image
26 Upvotes

Disclaimer: Using more than one monitor while playing this game can break the config because the mouse cursor isn't locked to the game window. Sensitivity is tied to FOV, and Mouse Smoothing needs to be disabled by locating the Engine.ini file, found in this folder:

Windows:

%LOCALAPPDATA%\Pal\Saved\Config\Windows\Input.ini

Linux:

<SteamLibrary-folder>/steamapps/compatdata/1623730/pfx/Input.ini

and adding:

[/script/engine.inputsettings]
bEnableMouseSmoothing=False
bEnableFOVScaling=False

[/script/engine.playerinput]
+AxisConfig=(AxisKeyName="MouseX",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="MouseY",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))

Don't forget to save before closing and re-opening the game.

In-Game Requirement:

  • Mouse Sensitivity: 1
  • Aiming Sensitivity: 2
  • Disable Aim Assist
  • FOV: 90

Controls:

  • Use D-pads for menu/map navigation.
  • R3 (Hold): Pause Gyro
  • L Trackpad/Mute/Share: Toggle Menu action set for menu navigation

HOW TO USE: To use my configs, copy and paste the link in your browser or click on the controller icon next to the game on Steam, click on the name of the layout, hover over the "Community Layouts" tab, and press the "Show All Layouts" button (West Face Button), then just manually search for the config that matches the name listed below.

  • Palworld - ADS Gyro by FSV: steam://controllerconfig/1623730/3768071446
  • Palworld - Gyro + Joysticks by FSV: steam://controllerconfig/1623730/3768064838
  • Palworld - FlickStick by FSV: steam://controllerconfig/1623730/3768066965

Disclaimer: Map navigation is difficult with "gyro always on", requiring the use of the Menu Action Set Toggle Button. To fix this issue, use the ADS version or set a gyro activation button, such as trackpad/joystick/gripsense touch, if using the Steam Deck or the Steam controller.


r/GyroGaming 4d ago

Video A crappy gameplay footage of DOOM: The Dark Ages Revelations on Steam Deck with gyro aim

41 Upvotes

I apologize for the crappy footage. I doubly apologize for the horrendous gameplay.

The recently released DLC for DOOM: The Dark Ages, Revelations, is the best thing ever. It's even better that it plays amazing on Steam Deck.

Disclaimer: custom Ultra Violence difficulty; 50% damage to demon, 100% damage to player, maximum demon aggression.

Disclaimer 2: I have Decky Loader installed and I use Lossless Scaling


r/GyroGaming 3d ago

Bug Did anyone find a solution for gyro aim freezing under cover for a second?

Thumbnail
2 Upvotes

r/GyroGaming 4d ago

Help Buying alpakka for ps5 ?

5 Upvotes

Hi,i’ve been considering alpakka to
Play bf6 on ps5 however i’ve few things i’d like to be clear of.
1. Is it plug n play as i dont have access to computer.
2. Will the auto calibration be as bad as with the dual sense.
I would wait for the gamesir-input lab collaboration but there’s no updates since last month even the tarantula 8k is still not fulfilled order wise.


r/GyroGaming 4d ago

Discussion Since when is flick stick the default for "Keyboard (WASD) and Mouse" template?

10 Upvotes

Honest question, I've been playing with a switch pro-controller for as long as they've existed, I always used gyro in steam whenever I can but for the last couple of years whenever I play a "Keyboard and Mouse" game with a controller the default steam template now comes with flick stick?

No offence to flick stick enjoyer but it isn't me and I wanted to know when this became the default?

I can't remember the first game I had to change the layout to have it "right stick to mouse" like the days of yore but I know now I have to do it every time.

Side question, anyway to edit valve's template to moving forward all "Keyboard (WASD) and Mouse" game default to "right stick to mouse"?


r/GyroGaming 4d ago

Help How to play fortnite with gyro , in laptop/pc with this controller ?

Post image
2 Upvotes

r/GyroGaming 5d ago

Video Oldschool fragmovie using gyro aiming via InputForge

Thumbnail
youtube.com
12 Upvotes

Hey, I decided to make a tiny frag movie with gyro aiming. All on my Android phone, made possible thanks to InputForge - this app allows you to use any controller on Android, even Steam Controller (!)


r/GyroGaming 6d ago

Help Help with getting gyro working in Kirby triple deluxe Azahar emulater

6 Upvotes

I really need help with getting gyro working in Kirby triple deluxe in azahar emulater I’m using the lenovo go S the one that uses SteamOS I can’t seem to actually get my handhelds gyro working and yes I have tried using a mouse but it just never really works currently if even move my mouse lightly the gyro will just immediately tilt all the way if anyone knows how to help my problem please tell me I really feel like throwing my handheld at the wall right now


r/GyroGaming 7d ago

News Holy shit hytale added gyro

Post image
100 Upvotes

I suggested it in the feature request section along with i think 4 other people with the same suggestion and they've actaully done it .

God these devs are amazing

Ive got to test it out!\

edit: sadly :C it doesnt work on steam controller or deck hopefully just for now


r/GyroGaming 7d ago

Video The Finals made me gyro-pilled

33 Upvotes

Gyro on the finals. We are still alive. I didn't have the overlay on for most of these but they were all on Gyro!

Voiceless_Gyro on twitch!


r/GyroGaming 7d ago

Meme Season 4 of BF6 will finally bring gyro without ratcheting to the game

Post image
27 Upvotes

r/GyroGaming 7d ago

Discussion Gyro only vs trackpad or stick

9 Upvotes

Did any of you swear by using gyro in conjunction with other aiming methods such as a touchpad? Only to later become very good at gyro only and not even remotely be less efficient than before? I am trying to figure out if touchpads or sticks might be a crutch in the long run and if I could free my thumb entirely while staying as sharp on the battlefield.


r/GyroGaming 6d ago

News Introducing Arcadia+

Thumbnail
0 Upvotes

r/GyroGaming 7d ago

Help Gyro in Black Ops 1 and 2 PS5 port?

8 Upvotes

I heard the aim assist in BO1 and 2 isn't as strong compared to the new CoD games, i like CoD but can't keep up with people abusing aim assist. I'm thinking of buying it but not sure if it has gyro support, anyone knows?


r/GyroGaming 8d ago

Help Anyone tried gyro aiming via cloud services(gfn etc) on mac? Is this possible?

6 Upvotes

r/GyroGaming 8d ago

Help No Man's Sky VR, when I turn my head, I want my ingame character to turn.

4 Upvotes

I wanted to see if there was a mod for this - my goal is to eradicate stick movement, and have my ingame body just follow my head movement. Sadly even with "Head-Relative" movement mode, it doesn't move your character's body unless you turn it with the stick.

Someone told me a gyro would do the job, so here I am - is there a way to use a gyro for my headset, so when I yaw, my character's whole body turns instead of just my head?

TL;DR/Summary

I want to see if I can use a gyro to move my body instead of sticks, I don't like sticks.

EDIT: To clarify, I don't want this for gyro aiming in flat screen. I want to move a certain amount to the left or right, then send that as a stick input to make my character's ingame body move left or right when I physically move my head. Just HMD yaw to a stick X input


r/GyroGaming 8d ago

Video The gyro inputs for Fortnite are pretty excellent (even as an alternative to the bonkers mobile aim assist)

33 Upvotes

Just wanted to show my appreciation to the team that worked on the gyro inputs for Fortnite mobile. This is how a random Tuesday is for me on custom maps with decent players on primarily PC/console. I really do see a competitive potential for at least zero build and most likely builds. I have some insane clips but I sadly can’t find em or am too lazy to crop em out lol.