XIM Community

Feature suggestion: Fast turn speed emulation  (Read 1556 times)

Offline Aerolite

  • Member
  • *
  • Posts: 5
    • View Profile
Feature suggestion: Fast turn speed emulation
« on: 01:55 AM - 04/02/17 »
Hey all,

Big fan of the XIM4 - both myself and my girlfriend own one for our Xbox Ones, and they're amazing. :)

Since playing Overwatch, I've found the game's low maximum turn speed to be a bit of a hinderance. I've recently made the switch to low sense aiming, and find it a bit awkward trying to "ride" the turn speed in the heat of the moment. Naturally, the XIM can only send the maximum joystick position to the console, so the options are somewhat limited.

Essentially, the problem: Low maximum turn speeds mean quick mouse movements hit the turn-speed limit (i.e. the mouse is moving faster than can be represented in game), essentially causing fast "swipes" of the mouse to be "wasteful" of the available space.

The solution: Emulate a faster turn speed by calculating the *intended* distance moved with respect to mouse speed and time, then temporarily overriding mouse input to ensure the turn is completed.

We already have the groundwork for this:
- The XIM knows how fast the mouse is moving, even if it has to cap the speed when translating to the joystick.
- The XIM is already capable of seamlessly overriding mouse input with it's turn assist feature

The XIM just needs to know *how long* the mouse is moving at a giving rate. If the XIM hardware offers a means of doing that (even a software timer could probably work here), then it should be mathematically possible to calculate how long we need to turn at max speed in order to reach the position that we *should* have been, based on how fast the mouse was moving, and how long it was moving. Once that calculation is done, the XIM could then disregard mouse input until it has turned for the appropriate length of time.

In-game, the result would be something like this:
1. Enemy darts behind player
2. Player (who is using low sensitivity) performs a quick "swipe" with the mouse to do a 180, exceeding the max turn speed of the game in question
3. The XIM sees that the max turn speed has been exceeded, and calculates (based on *how much over the max speed the mouse moved*, as well as *how long it was over the max speed*) exactly how long it needs to apply the max joystick position to achieve a 180
4. The mouse "swipe" ends, but because of the max turn speed meaning the player didn't complete the 180, the XIM then takes over the mouse input and continues to turn (so the mouse has stopped moving, but we're still turning in-game)
5. Once the turn completes, full mouse control is regained by the player

The result of this is that the *intent* of the player is maintained and executed (i.e. we *meant* to do a 180, so the XIM does it), at the cost of a few milliseconds during the turn in which the player cannot provide mouse input.

If this could be implemented as a toggle-able feature, I think this would really help out the low sense gamers from losing out due to capping the max turn speed in the heat of the moment.

Anyway, I really hope this suggestion made sense, at least at a high-level. If not, I'm happy to clarify as best I can, although despite being a software engineer, I'm no mathematician, so I'm not sure on the details of the math! :P

Thoughts?
- Aero

Offline OBsIV

  • Administrator
  • MVP
  • *
  • Posts: 29884
  • It's obsessive.
    • View Profile
    • OBsIV's Blog
Re: Feature suggestion: Fast turn speed emulation
« Reply #1 on: 08:47 AM - 04/02/17 »
Thank you for the feature suggestion. This is actually something we've considered in the past. What keeps us from going forward with it is it's unclear if after the end result with generally be usable by the majority. The question I have is if a majority or people turn in game strictly by feel of mouse displacement. The other issue is that some games will apply time based acceleration when you are near or at maximum turn speed which adds additional uncertainty into the system. Don't get me wrong, I want to add features that help with deficiencies of the game. But, I want to make sure to invest in things where it's clear that people will like and use. It would be great to hear about what others think of an idea like this.
Get the most out of your XIM4, read the XIM4 Support FAQ.

Offline piiwii

  • MVP
  • *
  • Posts: 1625
    • View Profile
Re: Feature suggestion: Fast turn speed emulation
« Reply #2 on: 09:05 AM - 04/02/17 »
It would be great to hear about what others think of an idea like this.

It's one of those things that is really hard to comment on until you've tried it.

Ever since I started scripting with my Titan device I've realised just how many times an idea comes to mind, you program it, and the result is totally different from what you expected. An idea that sound incredible on paper sucks when you try, or something that you wrote off ages ago, you revisit after a while for the hell of it and it happens to be the greatest thing ever.

An example of this is easy sprint. I have really bad carpel tunnel so constantly tapping the sprint button was murdering my wrist. I always wanted to see a feature in XIM where you could set it to automatically press a button (in this case, sprint). But when I started coding this I realised just how freaking complicated it was. Sprint would also auto cancel reloading. So I had to program it so it would force a delay when reloading. And then swapping weapons - that animation would be cancelled too. And then rappelling. And then I was still discovering issues that only subtly revealed themselves over many months of testing...other functions that automatically sprinting would interfere with. So what I thought was a simple bit of code to say if there was movement on the Y axis, press a button...it literally turned into about a year of refinement. My god you'd just never foresee just how complicated it got.

In this thread, I chronicle 8 different experiments I did on a single feature I thought would be straight forward:

https://www.reddit.com/r/Rainbow6/comments/5e9mh8/i_have_some_constructive_ideas_on_how_to_do_pc/

None of them were satisfactory, even though in my minds eye I thought I had cracked the problem. Each time I was let down.

So when someone asks OBsIV to implement what seems like on the surface an easy feature, I kind of smirk and think to myself "yeah, good luck there bud!".

Sometimes these things end up opening a pandora's box of complexity.

That being said, I'd be all for more experimentation as long as it didn't detract from other priorities.

Also OP, one thing you could do if you were so inclined is to get a Titan device and try to program this yourself. If you can prove the concept, post it here. I bet if it's compelling enough it would get more attention / priority.

Setup: XIM4, Titan Two, Sony Nav, Logitech G502, SteelSeries 4HD mousepad, DXRacer armrest, LucidSound LS30 headphones, Netduma router, Ubiquiti UniFi AP LR wireless access point

My setup: http://xim4.com/community/index.php?topic=39334.msg495390#msg495390

My Sony Nav mount: http://xim4.com/community/index.php?topic=39138.0

My DXRacer armrest and Razer mouse bungee: http://xim4.com/community/index.php?topic=39334.msg582636#msg582636

My RAINBOW SIX SIEGE Titan Two Mega Script: https://youtu.be/x-9NtxyySVM

My FOR HONOR Titan Two Combat Pack Script: https://youtu.be/ED66yjFNEb8

Offline RML

  • MVP
  • *
  • Posts: 4701
  • L1vE DiFfeR3nT
    • View Profile
Re: Feature suggestion: Fast turn speed emulation
« Reply #3 on: 06:57 AM - 04/05/17 »
Turn Assist
XB1 | C:M$ | XIM4 | Latest | BenQ 24" Monitor | Pad: Steel Series 9HD | Sony Nav | A: Sennheiser 650's/Mod mic/Sound Blaster X7 | M: G402 | D: 4000 | P: 1000 | AAA setup [ON]

Advanced Settings Info - http://community.xim.tech/index.php?topic=41264.0
Anti Aim Assist curve set for ANY FPS Game - http://community.xim.tech/index.php?topic=49063.0
Destiny Advanced Setup - http://community.xim.tech/index.php?topic=39989.0
Battlefield 1 Setup - http://community.xim.tech/index.php?topic=50289.0

Offline Guimephiles

  • Member
  • *
  • Posts: 1
    • View Profile
  • PSN ID: Guimephiles
Re: Feature suggestion: Fast turn speed emulation
« Reply #4 on: 05:30 PM - 04/14/17 »
Very nice suggestion, I was thinking of something like that being a very nice implementation.

I would certainly use it.

Offline Dr_BallSticks

  • Member
  • *
  • Posts: 364
  • "Curves make Godz"
    • View Profile
  • Gamertag: Godly Aim xo
  • PSN ID: Godly_aim
Re: Feature suggestion: Fast turn speed emulation
« Reply #5 on: 06:04 PM - 04/14/17 »
I don't like the idea, although if it had a toggle i wouldn't complain since it wouldn't effect me.

Reason being, is it would cause a "input lag" type of feel.
For example, a guy jumps behind you and drop shots...you would have to account for his drop before your turn is even complete to stay with him since any movement made over the turn limit would be postponed until the turn is complete. Now add multiple enemies or a target constantly moving. Let's say you make a fast 180 turn but see somebody 90 degrees through, you wouldnt be able to stop the "ghost movement" as well as account for the slow down of having the enemy in sight. In theory it sounds plausible, but not in application. (i feel)

It's a lot more beneficial to learn to turn within the turn limitations so the user input is responsive to any adjustments you make. Rather than put your input into a queue and executing it after the "exceeding turn is completed", and ignoring any movements would be even worse that putting them in a queue.. . my 2 cents

Offline lmyst1cal

  • Member
  • *
  • Posts: 44
    • View Profile
  • PSN ID: lMyst1caL_
Re: Feature suggestion: Fast turn speed emulation
« Reply #6 on: 04:22 AM - 04/23/17 »
I've always had this idea in my head about a feature that would be great if it worked. Everything is worth a try imo. could be a game changer if done right. I still maintain the xim4 report rate on ps4 and audio/mic through the ps4 controller should be higher priority tho

Offline systole

  • Member
  • *
  • Posts: 92
    • View Profile
Re: Feature suggestion: Fast turn speed emulation
« Reply #7 on: 11:08 AM - 06/01/17 »
I've thought about this too, but as RML said, we do have turn assist. to further that, what if there was a dynamic turn assist "threshold" that we could change ourselves? it would mean a new manager, unfortunately.
What i mean is more or less this rough:

Red line, we set our own threshold per position 1-20 (or 0 for off i guess), and mouse movement higher and remains higher kicks TA on, once we drop below it kicks off and we're back on the curve. no idea how that would actually play out. Not exactly necessary, and inconsistent aiming per game and what not, but a thought.

Offline Mkbnoob

  • Member
  • *
  • Posts: 20
    • View Profile
Re: Feature suggestion: Fast turn speed emulation
« Reply #8 on: 12:04 AM - 07/18/17 »
If you manage to do that properly overwatch will become way more fun to play, the max turn speed just ruins everything