Beacons can now allow players to fly!
![]()
BeaconFlight lets active beacons grant creative-style flight when configurable conditions are met.
The gameplay logic is server-side, so it works on dedicated servers with unmodded clients. The same jar can also be used in singleplayer. If you install Mod Menu and Cloth Config on the client, the mod exposes an in-game config screen as well.
1.21 through 1.21.110.15.11+21+minecraft:end/elytra advancement.mods folder.The config file is created at:
config/beaconflight_config.json
You can edit the JSON file directly, or use the Mod Menu config screen if Mod Menu and Cloth Config are installed.
Available options:
minBeaconLevel: minimum beacon pyramid level required. Valid values are 1 to 4.mainHandItem: required item in the player's main hand, or null.offHandItem: required item in the player's off hand, or null.anyHandItem: required item in either hand, or null.headItem: required helmet item, or null.chestItem: required chest item, or null.legsItem: required leggings item, or null.feetItem: required boots item, or null.advancementsRequired: list of advancement ids the player must have completed.xpDrainRate: XP drained per second of active flight. Use 0.0 to disable XP drain.flightLingerTime: custom linger duration in ticks after the player leaves beacon range. Use 0 to reuse the normal beacon effect duration.slowFallingTime: Slow Falling duration in seconds after flight is lost.logLevel: BeaconFlight log level. Useful values are INFO, DEBUG, TRACE, ALL, and OFF.Notes:
minecraft:diamond_chestplate.minecraft:end/elytra.Default config:
{
"minBeaconLevel": 4,
"mainHandItem": null,
"offHandItem": null,
"anyHandItem": null,
"headItem": null,
"chestItem": null,
"legsItem": null,
"feetItem": null,
"advancementsRequired": [
"minecraft:end/elytra"
],
"xpDrainRate": 0.0,
"flightLingerTime": 0,
"slowFallingTime": 10,
"logLevel": "INFO"
}
Minimal config for testing:
{
"minBeaconLevel": 1,
"mainHandItem": null,
"offHandItem": null,
"anyHandItem": null,
"headItem": null,
"chestItem": null,
"legsItem": null,
"feetItem": null,
"advancementsRequired": [],
"xpDrainRate": 0.0,
"flightLingerTime": 0,
"slowFallingTime": 10,
"logLevel": "ALL"
}
logLevel to ALL to get grant and deny messages in the game log.advancementsRequired, and set minBeaconLevel to match your beacon.Use the Gradle wrapper:
.\gradlew.bat build
The built jar is written to:
build/libs/