# Controlify 1.1 (Beta 1)

A noteable update to Controlify, with a lot of new features.

## New Features

- Controller vibration support for all platforms.
- Reach-around block interaction that imitates Bedrock Edition's exact behaviour.
- Reduce aim sensitivity option. When aiming, the sensitivity is reduced and more fine control is given.
- Modded keybinds are now automatically registered as controller binds.
- Bindings are now grouped into categories.
- Compound joysticks, allowing for an infinite amount of inputs. This currently has no UI, and you have to create a joystick mapping resource-pack yourself. This will come in a future update.
- Two abstract gui controller binds are available for mod developers to use in any screen context.
- Button guide in screens, with a new API for mod developers to add their own button guides.
- New registry for screenop API, as an alternative to mixing into UIs, you now register `ScreenProcessor`s and `ComponentProcessor`s on the Controlify entrypoint.
- New builder API for controller bindings, deprecating the old constructor-based approach.

### Controller Vibration

This is a feature that is available on all platforms, Windows, Linux, and Mac.
Only a few vibrations are implemented in this beta, but I'd love suggestions for more.
The current vibrations are:

- Using items (including eating)
- Taking damage
- Ender dragon death
- Anvil use (clang! clang! clang!)

## Changes

There are multiple breaking API changes in this update, but as of writing, I am not aware of any
mods that utilise any of Controlify's APIs. This will not happen in minor updates when this mod is more popular.

- Ingame guide registry now takes a function that provides `IngameGuideContext`, rather than many parameters, this
  future-proofs the API if more parameters are added.
- Some ingame guide classes have moved inside the `api` package.
- Partial Chinese translation by [@GodGun968](https://github.com/GodGun968).

## Bug Fixes

- Fixed a bug where some in-game binds worked in containers. ([#35](https://github.com/isXander/Controlify/issues/35))
