Tuesday, October 19, 2021

Rocket League - Reduce controller input-lag & Improve controller consistency guide

Rocket League guide: Reduce controller input-lag & Improve controller consistency By Nakamiro Step-by-step guide to reduce controller input-lag (unnecessary latency) by disabling Steams controller settings and how to configure a higher polling rate. This guide is not about the in-game settings. 1. Steam's controller support settings add latency This part concerns Steam-players, but can also be useful for Epic Games-players that have Steam running in the background while playing Rocket League.  Introduction to Steam's controller support Steam is a feature-rich client, but uses a build-in "General Controller Settings" tool which adds controller support for many games that don't support it by default, while also giving the option to customize a lot of controller related settings, like remapping a button or run a macro. Fantastic news, only not for Rocket League.  Why? Using the general controller settings while playing Rocket League will add a significant amount of input-lag and sometimes introduces double inputs when playing the game. These can be identified by navigating the menu. Luckily, the game supports controllers by default, so I recommend to disable Steam's general controller settings.  How? In the Steam client we disable the "General Controller Settings" for specifically Rocket League using the game properties, but we'll also disable the "Desktop Controller Configuration". As disabling the general controller settings will cause Steam to default to the desktop controller configuration. The desktop controller configuration acts like a profile that activates when you're not playing a game or disabled the controller settings for a specific game like we will. Both the general controller settings and the desktop controller configuration add a lot of latency/input-lag when playing Rocket League, so disable both with these two steps:  Step 1 - Disable Steam's controller support for Rocket League Go to your Steam game library and navigate to Rocket League and click ➞ On the cogwheel (On the right-top side below the Rocket League banner) ➞ Properties ➞ Controller ➞ Steam Input ➞ and select "Disable Steam Input", then confirm by clicking Ok. Restart Steam for the changes take effect.    ✔ Verify step 1 ✔ Navigate to Rocket League ➞ Click on the cogwheel ➞ Manage ➞ If you don't see any controller settings option in this menu, this step is complete.  Step 2 - Disable Steam's desktop controller configuration. Click on steam at the top-left of your screen and click ➞ Settings ➞ Controller ➞ General controller settings ➞ Disable all checkmarks and confirm by clicking Ok. Restart Steam for the changes to take effect.    ✔ Verify step 2 ✔ Click on steam at the top-left of your screen and click ➞ Settings ➞ Controller ➞ Desktop Configuration. A message should appear like the one illustrated below.   2. Wired vs Wireless use of controllers Use a wired connection over wireless (if possible) According to Rocket Science, some controllers have a lower input-latency if used wireless opposed to using the same controller wired. However, using a controller with a wireless connection will always introduce spikes in latency, which makes your input-lag a little bit more inconsistent. The spikes are very small and almost none-existent using a wired connection. The picture below illustrates a (lower) input-latency vs a consistent (yet higher) input-latency.  Dualsense latency wired vs bluetooth vs wired OC 1000Hz polling rate
 
Source: Rocket Science, linked at the end of this guide  So the general rule is to use a wired connection if it's convenient. Using a controller wireless is not bad, but you can get used to a bit of consistent input-lag, while it's impossible to get used to inconsistent input-lag.  3. Increase your polling rate Polling rates and input lag The polling rate in Hz determines how often your computer requests an update from your controller (or mouse) using the USB connection. When a new controller is plugged in, the polling rate is automatically set to 250 by Windows. (so the PC requests an update 250 times a second when the controller is connected)  However, this doesn’t mean the controller is forced to deliver the requested updates at the same rate, but every controller has its own rate of releasing an update for the pc to grab. In general PlayStation controllers have an update rate of 250Hz (250 times a second) and Xbox controllers have an update rate of 124Hz. (124 times a second)  For the PC to register the update from the controller a.s.a.p., increasing the polling rate to 1000Hz (1000 times a second) will instantly reduce input lag and increase the input consistency. Result: In the time the controller spits out one update, the PC has already tried to retrieve it 4 times.  Average input lag gained by using a 1000Hz polling rate using different controllers  Source: Rocket Science, linked at the end of this guide  How to increase the polling rate for reduced latency I used a polling rate overclocking tool called Hidusbf from LordOfMice. This tool is mainly used for mice, but can also be used for controllers.  Polling Rate Overclocking tool Hidusbf  Source: Hidusbf by LordOfMice  A. First off, download the latest version of Hidusbf using this link [github.com] from GitHub. Then extract the package to a place where you don't accidentally delete it. (It functions as the tool's program directory)  B. In the DRIVER folder found in the extracted folder, you’ll find the setup.exe, which starts the tool. I would recommend to make a shortcut of the setup.exe to your desktop or start menu, so you can easily check if you’re still using your custom polling rate. (Right click setup.exe -> "Add shortcut to desktop" and/or "Pin to start") I then renamed the shortcut to "polling rate overclocker" for my own convenience.  C. Run the tool by double clicking the setup.exe. After the tool has started and opened up a new window (see picture above), look at the top left and choose the select all option and select your controller. Determine which entry resembles your controller by disconnecting and connecting your controller. It should appear in the list when connected.  D. When you selected your controller, check the “filter on device” box -> click on Default to the right of it and select 1000Hz and finally click on install service. Wait a moment. Click restart and check the "Rate" & "Filter?" columns corresponding to row your controller is on. The "Rate" value should be "1000" and the "Filter?" value should be "Yes".  And you're done, your PC now requests an update from your controller a thousand times a second.  Your custom or overclocked polling rate should survive computer restarts, but I noticed that it got reset after a Windows update. So check your polling rate every once in a while.  NOTE: The PS5 Dualsense controller uses a different USB-standard than most controllers. A selected custom polling rate of 1000Hz using the hidusbf-tool results in a polling rate of 8000Hz.  Most games are optimized for a max polling rate of 1000Hz. I personally use the Dualsense controller with 8000Hz and Rocket League runs fine. But if your pc barely runs Rocket League, it's not recommended to use an effective 8000Hz polling rate, as it could introduce performance issues. 4. Suggestions & improvements Would you like to see something added to this guide or see something that could be improved? Let me know in the comments and I'll gladly add a section or change any mistakes I made.  Reaching more players Don't forget to like this guide if it was helpful and feel free to share it with your friends.  Anyway, I never made a guide and wanted to share something with the community. Have fun playing and I'll see you on the field!



0 comments:

Post a Comment