The Best Resource for Minecraft
The Best Resource for Minecraft

MrCrayfish's Controllable Mod Wiki

MrCrayfish's Controllable Mod is the definitive utility for Minecraft: Java Edition that introduces native controller support, featuring a Bedrock-style interface, analog movement, and a highly customizable radial menu.

6 sections · 948 words

Overview#

Controllable is an open-source utility mod developed by MrCrayfish that enables players to use gamepads and controllers to play Minecraft: Java Edition. While Java Edition traditionally lacks native controller support, this mod bridges the gap by providing an experience comparable to—and in many ways superior to—the Bedrock Edition. It supports a wide array of controllers, including Xbox, PlayStation, and Nintendo Switch Pro controllers, and is built on the SDL2 library for high performance and compatibility.

Key Features

  • Native Gamepad Support: Play with almost any USB or Bluetooth controller.
  • Bedrock-Style UI: Includes context-based button hints and a navigation experience designed for gamepads.
  • Analog Movement: Move freely in 360 degrees rather than being restricted to 8-way keyboard movement.
  • Radial Menu: A customizable wheel that allows you to bind multiple game actions to a single controller button.
  • Multi-Instance Support: Run multiple instances of Minecraft on one PC, each controlled by a different gamepad.
  • Accessibility: Provides an alternative input method for players who find keyboard and mouse difficult to use.

Interface & UI Elements#

Controllable adds several visual elements to the Minecraft HUD and menus to facilitate controller gameplay. These elements can be toggled or customized in the mod's configuration menu.

Button Hints

Context-sensitive icons appear on the screen to show which buttons perform specific actions (e.g., "A: Jump", "Y: Inventory"). These hints change dynamically based on whether the player is in a menu, riding an animal, or swimming.

Paper Doll

A small, animated 3D model of the player character appears in the top-left corner of the screen when the player is performing actions like sprinting, sneaking, or flying, similar to the Console and Bedrock editions.

Virtual Cursor

In menus and inventories, the mod introduces a virtual mouse cursor controlled by the thumbstick. This allows for precise item management and interaction with modded GUIs that may not have native controller navigation support.

Controller Selection Menu

Accessed via a new controller icon in the standard Options menu, this screen allows players to select their active gamepad, calibrate deadzones, and test inputs.

Mechanics#

The mod introduces several new gameplay mechanics to adapt the Java Edition's keyboard-centric design to a controller.

Radial Menu

The Radial Menu is a powerful tool that expands the limited number of buttons on a controller. By holding a designated button (defaulting to the Left Bumper), a wheel appears on the screen. Players can assign any keybinding—including those from other mods—to slots on this wheel.

Analog Movement

Unlike the binary input of a keyboard (on/off), Controllable supports analog input for the thumbsticks. This allows for varying movement speeds based on how far the stick is pushed and true 360-degree directional control.

Mechanic Description Note
360° Movement Move in any direction without being locked to 45° increments. Disabled on some servers to prevent anti-cheat triggers.
Quick Crafting One-click crafting from the recipe book using the controller. Streamlines inventory management.
Unified Input Merge two or more controllers into a single unified input. Useful for co-op or accessibility setups.
Vibration Haptic feedback for actions like taking damage or falling. Can be toggled in settings.

Configuration & Settings#

Controllable features over 25 individual settings to fine-tune the experience. These can be accessed in-game via Options > Controller Icon > Settings.

Setting Description Default Value
Sensitivity Adjusts the speed of the camera movement. 100%
Deadzone Sets the area where thumbstick movement is ignored to prevent drift. 0.10
Cursor Speed Adjusts the speed of the virtual mouse cursor in menus. 1.0
Invert Y-Axis Flips the vertical camera controls. False
Vibration Enables or disables controller haptic feedback. True
Render Player Toggles the "Paper Doll" player model in the HUD. True
Button Hints Toggles the on-screen button prompts. True
Console Hotbar Centers the hotbar and adds button labels below it. True
Analog Movement Sets whether analog movement is enabled (Always, Local Only, Never). Local Only
Auto Select Automatically selects the first detected controller on startup. True

Controller Setup & Connection#

Depending on your operating system, connecting a controller may require different methods. Controllable uses the SDL2 library (in modern versions) or GLFW for input.

Windows Methods

  1. Plug & Play: Many modern controllers (Xbox One/Series, DualSense) work immediately upon being plugged in via USB.
  2. GlosSI: An open-source tool that enables Steam Input for non-Steam games like Minecraft, providing high compatibility for various gamepads.
  3. DS4Windows: Specifically for PlayStation (PS4/PS5) and Nintendo controllers, this tool emulates an Xbox controller which is easily detected by the mod.

Linux Methods

  1. Steam Virtual Gamepad: By adding the Minecraft Launcher as a non-Steam game, Linux users can leverage Steam's robust controller drivers.
  2. xpadneo: An advanced driver for Xbox One wireless controllers that provides better Bluetooth support on Linux systems.

Mac OS

Most controllers are supported natively via Bluetooth or USB. Simply connect the device and select it in the Controllable menu.

Troubleshooting & Pitfalls#

Common Issues

  • Double Input: If your controller moves the camera twice as fast or skips menu items, close Steam or disable its "Desktop Configuration" for your controller. Steam and Controllable may both be sending inputs simultaneously.
  • Controller Not Detected: Ensure the Framework mod is installed, as it is a required dependency for Controllable in version 1.20.1. Try switching between USB and Bluetooth connections.
  • Incorrect Mappings: If buttons are swapped (e.g., A acts as B), you may need to update the gamecontrollerdb.txt file within the mod's JAR file using the latest SDL mappings.

Pitfalls

  • Old Mappings: Older versions of the mod (like 1.12.2) may not recognize modern controllers like the DualSense (PS5) without manual mapping updates.
  • Anti-Cheat: Some servers may flag the mod's analog movement as a "cheat" because it allows for movement angles not possible on a keyboard. It is recommended to set Analog Movement to "Local Only" when playing on public servers.