kuroni / bongocat-osu

An osu! Bongo Cat overlay
MIT License
2.11k stars 305 forks source link

Mouse kind of "stuck" to the middle of the mousepad #48

Open Lainwolf opened 4 years ago

Lainwolf commented 4 years ago

Hi there. First off thanks for making this program.

I'm using this not for its intended games, and I'm running into this issue is Warzone where the mouse is sticking to the middle of the mouse pad when I move. You can see it here: https://www.twitch.tv/videos/650363224

I ran it windows 7 & 8 compatibility on the .exe but no avail. The keys still work (as you can see).

kuroni commented 4 years ago

Oh, this is the behavior when you try it on any type of FPS. Basically the game will move your cursor to the middle after every frame, so it is not possible to work around this (I tried this on CSGO once too) :(

Lainwolf commented 4 years ago

:( Wow there's really no way to go around this? I really wanted to use this for FPS games

kuroni commented 4 years ago

I have thought about this for some time, but essentially when you lift up the mouse and place it to another place it's impossible to detect.

Lainwolf commented 4 years ago

I've read that it may be possible by changing the game settings to allow for, what they call, raw mouse input.

It's interesting because there are games like fortnite that I've seen streamers use this program and have no issues. Maybe its because the third person perspective is different in terms of mouse input?

kuroni commented 4 years ago

Can you link me to one of those streams? I want to see bongocat's behavior.

Lainwolf commented 4 years ago

https://www.youtube.com/watch?v=ObLQXEPfL7I

here's one that is a quick lookup on youtube.

kuroni commented 4 years ago

Well, I believe that here Fortnite doesn't actually re-place the cursor to the middle of the screen after each frame, but to detect the movement of the cursor from the mouse's raw input. You can try toggling the raw input option in the game to see how it goes for bongocat.

Lainwolf commented 4 years ago

I'm going to try to find the option for it in some games. Its a weird thing. Dead by Daylight, when you play the killer, its in first person view and it doesn't do the mouse reset. COD: Warzone, its an FPS shooter that does it.

I'll try finding the options to allow raw mouse input in warzone, I'll comment back here if I get any progress.

Kotsuha commented 4 years ago

Just step by and think this is an interesting issue. Is there possibilities that: Make bongocat's mouse behavior not the same as real mouse position, instead make it move relatively based on mouse move ("detect the movement of the cursor from the mouse's raw input" like you said above)? English is not my native language so sorry for strange sentence if there is any.

kuroni commented 4 years ago

The problem is that now when the application moves the cursor back to the center, it is indistinguishable from a user moving the mouse.

dark-swordsman commented 3 years ago

The problem is that now when the application moves the cursor back to the center, it is indistinguishable from a user moving the mouse.

I'm not sure if this is a problem that needs to be solved for.

If it's possible to just swap it over to a mode where it can instead of detecting mouse position on a field (like tablets), do what FPS games do already and translate that motion into in-game motion.

IMO, it would be better to have a mouse like the one shown in the video, that can just slide across the mousepad and stay at it's limits than what the current state is, even if the mouse is not "technically" accurate.

I'd love to do a PR to help implement this, but I have never used C++ ever. I have only worked with JavaScript and a little Python.

Edit: I actually noticed with Valorant in Fullscreen that it works as intended. I guess that's just the way Valorant works?

karsaidavid commented 3 years ago

Any progress on this? I ran into the same problem as well.

kuroni commented 3 years ago

Yeah I will try to think what I can do with raw input as @dark-swordsman suggested, but since the project is now cross platform it will take some time.

markojelaz commented 3 years ago

Yeah I will try to think what I can do with raw input as @dark-swordsman suggested, but since the project is now cross platform it will take some time.

Still not working ?