MidnightControls

A Minecraft mod adding controller support and enhanced controls overall.

MIT License

Stars
179
Committers
29

Bot releases are visible (Hide)

MidnightControls - MidnightControls 1.10.0 - Alpha 1 Latest Release

Published by Motschen 3 months ago

Hello Test Subject! Thank you for volunteering for testing! 🧪
MidnightControls has suffered from a lot of issues due to high code complexity.
This release aims to fix exactly that, by rewriting a lot of the internal logic and fixing longstanding bugs.

The improvements include:

  • Neoforge support! 🤯
  • Very smooth joystick input (Now updated 1000 times per second, not FPS capped anymore, works best without VSync for now)
  • Fixed Touchscreen support, seperated touchscreen camera logic to avoid future issues
  • Improved virtual cursor -> now way smoother!
  • Special cursor for Wayland Linux sessions 🐧
  • Improved mouse button emulation -> now works with EMI, REI, JEI, etc.
  • Fix crash when plugging in controller while not in a world
  • Fix mouse back button not being rebindable
  • Easier copying of controller GUID
  • More capabilities for the API
  • And many more!
MidnightControls - MidnightControls 1.9.4 – 1.20.1 & 1.20.4

Published by Motschen 8 months ago

Fixed Virtual Mouse misbehaving -> Splitscreen play is now possible again!
Updated EMI compat to fix crashes

MidnightControls - MidnightControls 1.9.0 - 1.20.2

Published by Motschen about 1 year ago

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 ;)

MidnightControls - MidnightControls 1.8.1 - 1.19.4

Published by Motschen over 1 year ago

  • Fixes #185 (Left joystick not working like a mouse when it's supposed to)
  • Includes Ukrainian translation by @forditt (from #170)
MidnightControls - MidnightControls 1.8.0 - 1.19.4

Published by Motschen over 1 year ago

  • 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
MidnightControls - MidnightControls 1.7.3 - 1.19.3 & 1.19.2

Published by Motschen almost 2 years ago

  • (1.19.3) Fix crash with Fabric API 0.71.0 (thanks to @HttpRafa in #155)
  • (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)
MidnightControls - MidnightControls 1.7.2 - 1.19.3

Published by Motschen almost 2 years ago

  • 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
MidnightControls - MidnightControls 1.7.1 - 1.19+

Published by Motschen almost 2 years ago

  • 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
MidnightControls - MidnightControls 1.7.0 - 1.19

Published by Motschen about 2 years ago

MidnightControls - MidnightControls 1.6.0 - 1.19

Published by Motschen about 2 years ago

This is a big one!

MidnightControls - MidnightControls 1.5.0 - 1.19 & 1.18

Published by Motschen about 2 years ago

MidnightControls - MidnightControls 1.4.1 - 1.19 & 1.18

Published by Motschen over 2 years ago

  • Fix tooltips in inventories getting displaced when having the GUI scale set to something above 4.
  • Backport all recent changes to 1.18.2
MidnightControls - MidnightControls 1.4.0 - 1.19

Published by Motschen over 2 years ago

  • EMI compat! (Switch page keybinds & more)
  • Expose more keybindings
  • Fix Compatibility with Quilt Creative Extension
  • Improve Auto Switch mode (Automatically switch gamepad on connection changes)
  • Fix triggers not working on some (slightly broken) controllers
  • Fix #57 (Broken stack pickup)
  • Fix #56 (Unused language strings)
  • Fix #52 (Rebound perspective button blocking actions)
  • Fix #46 (Button overlap with Crawl mod)
  • Fix #59 (D-Pad can switch EMI buttons when in Inventories)
  • Fix missing tooltip by @Madis0
  • Estonian translations by @Madis0
  • Russian translations by @Ivanoks
MidnightControls - MidnightControls 1.3.0 - 1.19

Published by Motschen over 2 years ago

  • Merge #48 (Split rotation speed in X and Y, thanks to @ronniedude)
  • Merge #47 (Korean translations by @gyular)
  • Fix #50 (Stack pick-up problems in survival mode)
  • Add some compatibility measures for EMI (Will likely be improved further in the future)
  • Remove all REI-related code (not working anyway, EMI is better)
  • Possibly fix #41 (Random crashes when changing keybinds)
MidnightControls - MidnightControls 1.2.2 - 1.19

Published by Motschen over 2 years ago

  • Fix left mouse button not working (sorry about that...)
  • (Hopefully) Fix incompatibility with Fastload
MidnightControls - MidnightControls 1.2.1 - 1.19

Published by Motschen over 2 years ago

Remove leftover debug logging

MidnightControls - MidnightControls 1.2.0 - 1.19

Published by Motschen over 2 years ago

  • Added #40 (Modded keybind support)
  • Added #20 (Touchscreen support)
  • Improved #13 (Sodium screen controller support)
  • Attempt to fix #31 & #38 (Jittery input on low FPS)
  • Fixed #35 (Front placing being broken)
  • Fixed #32 (Option to disable double tap to sprint)
  • Fixed #27 (Auto-adapt controller icons)
  • Fixed #19 (HUD-scaling on big scales)
  • Fixed #36 (Crash on game load)
  • Fixed reset option
  • Fixed scrolling in trading screens
  • Disable features that might be considered as cheats (install MidnightControlsExtra to enable)
MidnightControls - MidnightControls 1.1.0 - 1.19

Published by Motschen over 2 years ago

  • Update to 1.19
  • Make buttons for Item/Stack Grabbing and Quick Moving configurable
  • Add Keybinds for moving between Fabric/Quilt Creative Inventory Pages
MidnightControls - MidnightControls 1.0.0 - 1.18

Published by Motschen over 2 years ago

MidnightControls - MidnightControls 0.3.1 - 1.18

Published by Motschen over 2 years ago

  • Fix #18 (thanks @akemin-dayo)
  • Fix buffer overflow when resizing Minecraft with MidnightControls screen active
Badges
Extracted from project README
CurseForge Modrinth Version Mod loader: Quilt/Fabric Java 17 GitHub license
Related Projects