Skip to content

Releases: isXander/Controlify

v1.4.0+1.20

02 Jul 19:19

Choose a tag to compare

Controlify 1.4 for 1.20

Additions

  • New config option to render ingame button guide HUD at the bottom rather than the top.
  • Support for dpad navigation in screens.
  • Changed the no gyro supported message to something more suitable for Steam Deck users, directing them to use Steam Input.

Bug Fixes

  • Fix crash when opening journeymap menu with a Steam Deck.
  • Fix some vanilla override bindings from not working.
  • Fix crash on shutdown when not using SDL mappings with a joystick connected.
  • Fix virtual mouse not working properly on most GUIs.
  • Fix buttons not auto-focusing on Steam Deck.
  • Fix rare crash to do with delegate_setup config option.

Localisation

  • Updated Chinese translation.

v1.3.2+1.20

26 Jun 18:26

Choose a tag to compare

Controlify 1.3.2 for 1.20

Additions

  • Added a toast when a server disables reach-around, and you have it enabled everywhere

Bug Fixes

  • Fixed bug where some controller bindings weren't working on the Steam Deck.

v1.3.1+1.20

21 Jun 18:10

Choose a tag to compare

Controlify 1.3.1 for 1.20

Additions

  • Added new setting to have a custom scale for the in-game button guide hud. This is relative to the Minecraft
    gui scale setting.
  • Better Steam Deck handling, allowing simultaneous use of Steam Input features like mouse gyro emulation
    and touchpads. This is temporary until the Steam Deck driver is finished.

Changes

  • Reimplement immediately-fast compatibility that was temporarily removed in 1.20 betas. Your button guides should
    be a little more performant now.

v1.3.0+1.20

11 Jun 22:04

Choose a tag to compare

Controlify 1.3 for 1.20

New Features

Server-side support

Controlify now has server-side support, meaning it is now recommended to install Controlify on your server.

/vibratecontroller command

This command allows you to make players' controllers vibrate. You can specify the intensity of both the
low frequency and high frequency motors, and the duration of the vibration.

You can select to either do a simple vibration, or place the vibration in world-space (either bound to an entity or position)
with a range to have the vibration intensity decrease with distance.

/vibratecontroller <receivers> <low_freq_intensity> <high_freq_intensity> <duration_ticks> <(static|positioned)> [<range>] [<(position|entity>]

/vibratecontroller @a 0 0.25 200 positioned 10 ~ ~ ~
/vibratecontroller @a 0.75 1 50 static
/vibratecontroller @a 0.75 1 20 positioned 10 @e[type=minecraft:warden,sort=nearest,limit=1]
/execute as @e[type=!minecraft:player] run vibratecontroller @a 1 0 5 positioned 20 @s

This comes with a client option in global settings to ignore these server requests to vibrate.

Reach-around policy

When Controlify is stored in the server, by default, the reach-around policy is set to disallow. You can
allow reach-around placement on your server by setting the reach_around_policy config option to true.

Bug Fixes

  • Fixed hotplugging not working when no controllers were connected at launch
  • Fixed natives not working on Apple Silicon

v1.3.0-beta.2+1.20

05 Jun 21:41

Choose a tag to compare

Controlify 1.3 (Beta 2) for 1.20

Additions

Controller Carousel Screen

This screen appears where the YACL config once was, after opening controller settings. You
can select a controller from the carousel to either edit its settings or set it as the active
controller.

On each entry of the carousel, you can now also see a pixel art icon of the specific controller type,
thanks to Andrew Grant for making these!

New Controller Settings Screen

Upon opening an individual controller config, a more refined YACL config screen will appear.
Three categories are available: Basic, Advanced and Controls. Basic contains the most common
settings you will change, advanced holds settings such as gyro and rumble.

With the new settings screen, comes the features of YetAnotherConfigLib v3. Some option descriptions
are now enhanced with gifs and images to better explain what they do. Because the controls groups are now
actually classes as groups, searching the group name will show all controls in that group.

Greatly improved gyro support

I got my hands on a controller with gyro, so I was able to test and refine the functionality to make
it as intuitive as possible. For starts, it actually works now (I forgot to enable the sensor) and the flick
stick is now a smooth animation rather than just jumping 90 degrees.

Better controller name detection

If not provided by explicit controller detection, Controlify now uses the name found in the
SDL game controller database, so more controllers should have more accurate names.

Experimental anti-snapback

Every spring isn't perfect, and can sometimes cause the stick to overshoot the neutral position
when returning to it. This can cause the camera to drift slightly. This feature attempts to mitigate
that. This feature can already be found in DS4Windows, but a more native solution is always better.

To try it out, you need to set a JVM flag in your launcher: -Dcontrolify.debug.use_snapback=true,
however, do be warned, this is extremely buggy and can cause the stick to jitter.

Bug Fixes

  • Fixed the natives onboarding screen getting stuck until a restart
  • Fix crash when attempting to load joysticks.

v1.2.1+1.19.4

19 May 16:00

Choose a tag to compare

Controlify 1.2.1

Bug Fixes

  • Updated mixin extras to 0.2.0-beta.8 to resolve some rare crashes (memoryLeakFix)

v1.3.0-beta.1+1.20

17 May 17:20

Choose a tag to compare

Controlify 1.3 Beta 1 (for 1.20)

Updated for Minecraft 1.20

New Features

  • Added a config setting delegate_setup so modpack authors can move the controller setup to when users
    enter the config screen.

Changes

  • Removed extra mappings resource pack (merged into base resources)

Beta 1

  • Added a config setting delegate_setup so modpack authors can move the controller setup to when users
    enter the config screen.
  • Removed the immediately-fast compatibility temporarily.
  • Removed extra mappings resource pack (merged into base resources)

v1.2.0+1.19.4

14 May 22:10

Choose a tag to compare

Controlify 1.2

New Features

  • Container button guide - just like bedrock edition
  • Button guides and shortcuts for the title screen and pause menu
  • Controller bind conflict detection - binds that conflict with each other are highlighted in red
  • Battery level warning as a toast. (EXPERIMENTAL)
  • Controller vibration & gyro support on macOS
  • A toast is now displayed when your primary controller was connected and automatically switched to.

Changes

  • Cursor snapping is now instant
  • Only print debug info if non-default
  • Removed 'VMouse Escape' bind in favour of GUI back.
  • Removed vanilla overrides for: swap hands, inventory, change perspective, show player list.
    This means nothing to the user but may reduce bugs.

Bug Fixes

  • Fix rumble reported as unsupported when it's just off
  • Fixed a bug where the logs were spammed on Steam Deck devices
  • Fix hidden mouse hovering over buttons in the centre of the screen
  • Fix rare crash

v1.1.1+1.19.4

05 May 19:01

Choose a tag to compare

Controlify 1.1.1

Additions

  • Binds can now be unbound by pressing the right stick down (configurable bind).

Changes

  • Vibration natives are now onboarded on-demand (when a controller is connected), rather than on startup.
  • Add extra details to controller construction crash report.
  • Update toasts to be more clear. (#64 by madis0)
  • Update vibration onboarding message to be more generic, including Gyro.

Bug Fixes

  • Fix reconnected controllers being unidentified.
  • Fix some mod keybindings failing to register as controller binds.
  • Fix 'Out Of Focus Input' option not working properly.
  • Fix crash with some unmapped joysticks.
  • Fix 'GUI Abstract Action 2' bind not saving properly.

v1.1.0-beta.4+1.19.4

21 Apr 17:45

Choose a tag to compare

  • Fix many crashes