p2sr / p2sr/SourceAutoRecord

InputHud uses in-game values for angles instead of inputs

Open
#371 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

low prio
Dominant language
C++
Stars
122
Forks
45
PR merge metrics
No merged PRs in 30d

Description

Description

The input HUD angle element (available under the tas preset) calculates its values from the player's in-game rotations instead of monitoring the raw inputs. As such, whenever the player gets rotated, SAR picks it up as human input, even if the player hasn't moved their mouse/joystick/gyro device.

Similarly, when the player's view angles are partially or completely locked (like when using the Reset Camera action), SAR erroneously shows no inputs on one or both axes.

Accidentally discovered in this thread in the P2SR Discord server.

Steps to reproduce

  1. sar_ihud 1
  2. sar_ihud_preset tas
    • play sp_a1_wakeup,
    • use the Reset Camera action via Steam Input, or
    • use the Spin 180° action via Steam Input

Workarounds

sar_ihud 0

Repro clip

https://github.com/user-attachments/assets/1767c592-d123-48da-9c77-1ce71cdaee24

Slowed down 20x¹

https://github.com/user-attachments/assets/27ad9578-77f5-4cd4-822f-05966399a9a1

_____
¹ Your browser might have issues playing this one. It's the same video bitstream, just slowed down 20x.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the InputHud angle element used by the tas preset, then reproduce the behavior with sar_ihud 1 and sar_ihud_preset tas in sp_a1_wakeup. Check how the element obtains angle values during player rotation and the Reset Camera or Spin 180° actions. Done means the HUD reports raw mouse, joystick, or gyro input without treating game rotation or locked view angles as input.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
game-dev
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
55/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.