Skip to content
Back to search

Do a Barrel Roll

by theaddonn

Full pitch, yaw and roll elytra flight for Minecraft Bedrock, ported from the Do a Barrel Roll Java mod.

  • 1 star
  • Updated
client · 0.2.0-mc26.51

README0.2.0-mc26.51

Do a Barrel Roll (Bedrock)

A port of Do a Barrel Roll by enjarai to Minecraft Bedrock Edition, as a LeviLamina client mod. It adds full pitch, yaw and roll to elytra flight.

Compatibility

ComponentVersion
Minecraft Bedrock for Windows1.26.51.01
LeviLamina26.51.6 (client)

Installation

With lip, from the game directory:

lip install github.com/theaddonn/Do-A-Barrel-Roll-Bedrock#client

Or download Do-A-Barrel-Roll-Bedrock-client-windows-x64.zip from the releases and extract the DoABarrelRoll folder into mods/.

Features

  • Full pitch, yaw and roll while gliding, with smoothing, banking, automatic righting and momentum-based mouse.
  • Camera roll and player model roll.
  • Optional artificial horizon and momentum widget HUD.
  • Optional thrust with smoke particles.
  • Keyboard, mouse and controller support.

Controls

Keys are listed in the controls screen under the mod's name.

ActionDefault
Toggle modI
Yaw left / rightA / D
Thrust forwardW
Toggle thrust, pitch up/down, roll left/right, thrust backunbound

Controller (XInput):

InputAction
Right stickRoll and pitch
LB / RBYaw left / right
RT / LTThrust forward / back

Configuration

The config is written on first start to mods/DoABarrelRoll/config/config.json, using the same layout as the Java mod. Main options:

OptionDefault
general.mod_enabledtrue
general.controls.activation_behaviourVANILLA (or TRIPLE_JUMP, HYBRID, HYBRID_TOGGLE)
general.controls.switch_roll_and_yawfalse
general.controls.invert_pitchfalse
general.controls.momentum_based_mousefalse
general.controls.disable_when_submergedtrue
general.hud.show_horizonfalse
general.banking.enable_bankingtrue
general.banking.banking_strength20.0
general.banking.automatic_rightingfalse
general.thrust.enable_thrustfalse
general.thrust.max_thrust2.0
general.thrust.thrust_acceleration0.1
general.thrust.thrust_particlestrue
general.misc.enable_gamepadtrue
general.misc.gamepad_deadzone0.15
general.misc.thrust_allow_remotefalse
sensitivity.desktop / .controllerpitch 1.0, yaw 0.4, roll 1.0
sensitivity.camera_smoothingpitch 1.0, yaw 2.5, roll 1.0

Thrust limitation

Bedrock movement is server-authoritative. Thrust only works in singleplayer, in worlds you host, or on servers running the server mod with allowThrusting, where the server accepts the client's position. On other remote servers thrust is disabled. Setting general.misc.thrust_allow_remote forces it on, which causes rubber-banding.

Server mod

A second build of the same project runs on Bedrock Dedicated Server with LeviLamina 26.51.6 (server). It is optional; clients without it are unaffected, and the client mod works on vanilla servers as before.

With the server mod and the client mod, players get:

  • Thrust on remote servers, if the server allows it. The server accepts the thrusting client's position instead of rubber-banding it.
  • Other players see your roll.
  • Server-controlled config: thrust can be allowed, the mod can be forced on, and players can be kicked if they lack the mod.

Install with lip: lip install github.com/theaddonn/Do-A-Barrel-Roll-Bedrock#server, or extract Do-A-Barrel-Roll-Bedrock-server-windows-x64.zip into the server directory so that plugins/DoABarrelRoll exists. The config is plugins/DoABarrelRoll/config/config.json:

OptionDefaultMeaning
allowThrustingfalseAllow clients to use thrust
forceEnabledfalseForce the mod on for clients
forceInstalledfalseKick players that do not complete the handshake
installedTimeout400Ticks after joining to wait for the handshake before kicking (forceInstalled)
maxThrustSpeed8.0Largest velocity in blocks per tick accepted from a thrusting client, 0 for unlimited

Operators ignore forceEnabled and may always thrust. Clients detect the server mod through its /doabarrelroll command and then talk over LeviLamina runtime packets, so vanilla servers never receive a custom packet.

Not ported

  • In-game config screen (edit the JSON file).
  • In-game editing of the server config.

Building

Requires xmake. On Windows:

xmake f -y -p windows -a x64 -m release
xmake

Pass --target_type=client (default) or --target_type=server to xmake f to pick the variant. The built mod is in bin/DoABarrelRoll.

License

GPL-3.0, like the original mod. Credit for Do a Barrel Roll goes to enjarai.

Install Do a Barrel Roll

Run this in your server or client folder with lip:

lip install github.com/theaddonn/Do-A-Barrel-Roll-Bedrock#client@0.2.0-mc26.51
Download from GitHub