thelabcat / DS-FPS-Mouse-Fixer-Linux

A Python cross-platform port of https://github.com/JDoe212/DS-FPS-Mouse-Fixer
GNU General Public License v3.0
0 stars 0 forks source link
emulation gaming metroid mousefix nintendo-ds

Nintendo DS FPS Mouse Fixer for Linux AND Windows, with Boost Ball support and Auto-Pausing features

A Python-based cross-platform port of https://github.com/JDoe212/DS-FPS-Mouse-Fixer with some quality of life improvements. Currently written mousefixes:

Support for other games is possible, but isn't planned at current. Request a game, or write a mousefix and create a pull request yourself if you want.

Requirements:

This program is tested and working with Python 3.12 on Fedora 39 and Windows 11, x86 64. It requires Python >= 3.9, possibly greater. To run from source, install Python 3.x, and the following Python libraries. If on Linux, they must be where root can see them. To achieve that, I ran Pip (Python's package installer) as root, even though it's not recommended.

Additionally, to use the HUD detection features on Linux, you will also need to install whichever screenshot tool PyAutoGUI is configured to use. Python will tell you in a traceback if it's not available. Either scrot or gnome-screenshot.

Usage

TOML Configuration:

Running the script:

  1. To run from source, the DS_FPS_mousefix.pyw script is the main program. The scripts in the mousefixes folder are not meant to be run by themselves as they rely on it.
  2. You have to run the program as root on Linux, as the keyboard and mouse libraries require root access on that platform.
  3. When the GUI opens, select a game from the option menu.
  4. If you do not want to use HUD detection for auto-pause and other features, uncheck the "Use HUD detection" box.
  5. Click "Start" when you are ready, with the emulator open. After a delay, the window will turn red, and the mousefix is active.
  6. After the mousefix window turns red, do not make any other clicks. Click two diagonal opposite corners of the stylus play area in your emulator, with the tip of your mouse cursor as close to the actual corner as you can, to calibrate where the play area is and how big it is. If you move the play area by resizing or repositioning the emulator window, you will need to restart the mousefix to recalibrate.

Controls:

Notes:

See you next mission! S.D.G.