Host your Minecraft server on BisectHosting - get 25% off your first month with code MODRINTH.
Filter loader...
Filter versions...
Filter channels...

This might very well be the biggest update yet! I got motivated by my recent aquisition of a Linux-based tablet as well as the stress to release a 1.20.2 port, and ended up rewriting large parts of the mod related to joystick input, touchscreen support, as well as fixing many long-standing issues.

The (huge) changelog:

  • Port to 1.20.2
  • Rewritten joystick input
    • Joystick input is now processed using polar coordinates, resulting in better accuracy and fixing tons of issues (Fixes #135, #138, #186 & #180)
    • Camera movement is now way smoother by including the previous stick values in the calculation (Fixes #217 & #167)
  • Touchscreen is now actually usable (in theory, I'll have to wait a few weeks for my tablet to arrive to test further)
    • Made it possible to place/break blocks and interact with entities & items
    • Added a touchscreen mode for interacting with entities and blocks at the position the click was registered at, not just at the crosshair
    • Added a close button to screens without their own back button
    • Added selection outlines for Break-at-Finger mode
    • Breaking blocks/interacting with entities will now just check if the target changed, not the finger position
    • Added the ability to create custom touch buttons out of ButtonBindings
    • Redesigned top touch buttons
    • Added Touch category to simple options screen
    • Added emote touch button when Emotecraft is installed
  • Additional keybinds are now loaded from the vanilla list instead of fabric's modded list
    • Better support for mods not using the Fabric Keybinding API (Closes #218)
    • Also now supports Forge mods via Sinytra Connector
    • Added configurable list to exclude certain keybinds
  • Added Eye-Tracker support thanks to @kabliz in #208
  • Fixed virtual mouse cursor sometimes being hidden behind objects (closes #221)
  • updateMappings() is now called asyncronously (Closes #219)
  • Removed old mixins
  • Fixed crash when joining world without the HUD's init method being called (closes #210)

Additional Contributions

Finally... yes, I do plan on backporting these changes to 1.20.1, 1.19.4 and perhaps 1.19.2. This will likely happen in MidnightControls 2.0.0, along with further big cleanups, a new-and-improved API and maybe even NeoForge / native Quilt support ;)

  • Update to 1.20
  • Fix virtual mouse cursor not being visible
  • Add option to hide the normal mouse cursor
  • Fixes #185 (Left joystick not working like a mouse when it's supposed to)
  • Includes Ukrainian translation by @forditt (from #170)
  • Port to 1.19.4
  • Drastically improved GUI handling
    • Directions are now respected instead of acting like the Tab key (possible thanks to 1.19.4)
    • The new tabs can be navigated using the shoulder buttons
  • Sodium and Iris now have way better controller navigation thanks to isXander's PRs to them
  • Improved reacharound thanks to MonstoBusta
  • Cleaner advanced options screen
  • Better auto-detection of the Steam Deck

Fix crash with Fabric API 0.71+ on 1.19.2

  • (1.19.3) Fix crash with Fabric API 0.71.0 (thanks to @HttpRafa in #155)
  • Compatibility with YetAnotherConfigLib (thanks to @isXander in #144)
  • Italian translation (thanks to @glaav in #149)
  • (1.19.2) Backport all changes from 1.7.2 and 1.7.3
  • Compatibility with YetAnotherConfigLib (thanks to @isXander in #144)
  • Italian translation (thanks to @glaav in #149)
  • Update to 1.19.3 (Tabbing through creative tabs behaves the same as before, that was hard)
  • Add an option to move the chat input field to the top of the screen for better input on devices using an on-screen keyboard
  • Add an option to make the left joystick behave like a mouse in every screen
  • Add a button to more easily access the Advanced Config

Direct port of 1.7.1 to Minecraft 22w43a

  • Add more compatibility for mods and vanilla screens
  • Make the left stick emulate the mouse cursor in the signed book screen
  • Holding the A-button (Cross-button on PlayStation controllers) now allows dragging certain elements on screen (useful for minimap mods, etc.)
  • The X-button (Square-button on PlayStation) will now emulate the right mouse button in any screen, except for the chat screen, where it'll act as the enter key (closes #116)
  • D-Pad will emulate the keyboard's arrow buttons in the chat screen and WASD keys in Devices Mod computer screen (closes #118)
  • Compatibility for VoxelMap's Keybinds
  • Scrolling in hotbar using the controller while in spectator mode will now increase the fly speed like the mouse wheel does (closes #117)
  • Sort contributor names in fabric.mod.json alphabetically and add missing ones
  • Fix diagonal movement speed (PR #113, thanks @dogtopus, closes #42)
  • Toggle Sprint and Toggle Sneak can now be enabled separately just for controllers (closes #102)
  • Added button binding profile support (closes #107)
  • Fix button binding tooltips intersecting with chat on large GUI scales (closes #106)
  • Add assets for non-licensed (numbered) PlayStation controllers (closes #110)
  • Fix reacharound outline color
  • Fix pixel error in legacy icons (closes #84)
  • Fix creative flight being slow with Bedrockify installed (just disables the "disableFlyingMomentum" option on launch)

This is a big one!

External resources

Project members




Original Creator

Technical information

Client side
Server side
Project ID