Tutorials/Flying machines

Flying technologies are technologies that make the use of elytra, commands, slime blocks, or other sources to move a player, entity or structure in the air, liquids, or solid blocks.

Piston flying machines
The slime block based flying technologies use the clever placement of pistons, blocks of redstone, observers and slime blocks to make an engine, which will move the structure. This is another way of legitimate flying in Survival mode, other than using elytra. The two main components of slime block flying machines are the engine and the splitter.

Expandable flying machine with a 2-way engine and multiple splitters (each carrying 2 TNT Duplicators)

These technologies use the fact that slime blocks will move adjacent movable blocks, including other slime blocks, when pushed or pulled.Examples of simple rideable flying machines

Engines


Engines are mechanical parts of slime-block based flying machines used to move them.

Engines divide into semi- and fully-automatic. The semi-automatic engines need player's intervention to move it, generally updating a piston (like using flint and steel on it or rapidly placing Tripwire against it).

The fully-automatic engines are capable of automating the above issue, like by a piston next to it that extends and pushes the moving construction. However, to stop such an engine, something must be in the way so that it can no longer move, this may be in the form of a mechanism in the machine or some other immovable obstacle.

Engines can also differ in available directions and speed. Some can only move in a single direction. They are the most simple and most common engines.

More rarely, engines can move in multiple directions. They have multiple piston mechanisms, each for movement into a separate direction.

Compact 2-Way Fully-Automatic Engine
The most compact full-auto 2-way engine can be made with 6 blocks.

Here's one variation (the Observers' texture here is the old 2016 version):

Diagonal Engine
Some engines can move diagonally by moving alternately along 2 axes.

Falling Hazard
Often due to the lag, slime engines can bug allowing the player to fall through the machine. This can be solved by placing the player in a vehicle such as a minecart.

Turbo-charged engines


Engine A is a high-speed single-direction engine. It fits into 2×2×6 dimensions and uses 14 blocks.

Note 1: This does not work in Java Edition 1.13.

Note 2: This seems to work in Java Edition 1.13.1

Note 3: It worked in Java Edition 1.13.2 and Java Edition 1.14.2

Note 4: does not work on bedrock edition (unless an observer-using variant is invented)

Splitters




Splitters are mechanical parts of a fully-automatic flying machine used to push an independent part of a large flying structure. A single piston only can push or pull up to 12 blocks. Splitters split a structure into multiple independent push-able parts (hence the name).

One-way Splitters
A 1-way splitter has 2 parts: a normal piston in the rear, and a slime block (or more) with a power source in the front with space between them.

Once the rear part with the piston is pushed, the piston will be activated by a power source from the front part. It will push the slime block (and thus the next part of the flying contraption and its splitters), which pulls the power source with it. The piston will then deactivate and prepare for another push.

Some simple engines are just made of looped splitters, such that, at any given time one piston is always powered (in these machines it is important to place the Redstone blocks last).

Two-way Splitters (Java Edition only)
A 2-way splitter consists of an observer powering at least one sticky piston which pushes or pulls a part of the flying contraption. This is possible only in Java Edition because it's the only version where sticky pistons (upon receiving a short redstone pulse) can push a block and then retract quickly without pulling it back.

This type of splitter will either continuously pull or push depending on whether the part it's supposed to move is initially retracted or not. If the part is initially retracted and the splitter is pulled, the sticky piston will continuously pull the part. On the other hand, if the part is one block away ("not retracted") and the splitter is pushed, the sticky piston will continuously push the part. This mechanism necessitates a switch within the flying machine to independently retract and extend the splitters before flight, because otherwise, the engine will most likely be not able to push due to the "stuck" retracted splitters adding extra load to the engine's pistons.

Using 2-way splitters, one can make a compact 4-way flying machine that can carry cargo (minecart chests), like this one:

Bedrock Edition
Bedrock Edition users can recreate a 1-way splitter using a single observer as a power source.

Bedrock piston designs
Flying machines are much more restricted in Bedrock Edition due to the lack of quasi-connectivity and other piston behaviors. In Java Edition, a sticky piston powered with a 1 tick pulse will drop the block it is carrying. The absence of these behaviors makes it difficult to create complex flying machines.

Simple engine
This is a basic flying machine design. Removing the block of redstone will cause the machine to stop.

Multi-directional engine
This design is multi-directional but it does require a return station to change the direction. In the schematic, glazed terracotta is represented by ice. The observers are 1 block higher than everything else and have slime blocks below them. The return station is only an example, anything that pushes the machine over so that the other sticky piston is unable to pull the terracotta should work. It may help to watch the video below to see some more examples.

Command based methods
Commands can also be used for flying entities or structures. Most commands based flying machines use command blocks so that when the player turns on an input, it activates certain command blocks. Unlike piston based technologies, however, these cannot be legitimately made in survival as command blocks require set up by an operator in creative mode.

/tp command
Using the command, entities can be teleported in a specific direction in small repeated increments, to exhibit a smooth flying. With clever command usage, movement can be controlled by various means such as holding a specific item

/clone command
Using the command, it is possible to more easily move structures by cloning them and teleporting entities in it with. It can be accomplished by cloning a structure relative to an entity with. The entity, in turn, can be controlled by some other means.

/summon command
Using the command, it is possible to lift an entity with explosions, somewhat similar to real life rockets. This can be done by spawning instantly detonating creepers or TNT below an entity. However, there is a multitude of disadvantages, including:
 * It is noisy and potentially laggy compared to most other types of flying.
 * This method is destructive to the terrain. Using creepers without mobgriefing enabled could solve this.
 * Damage to the entity being flown. This can be partially solved with Blast Protection or status effects.

/entitydata command
Using the command, it is possible to change the velocities applied to an entity rideable by the player, such as minecart or boat.

/gamemode command
The easiest way to fly is to just turn yourself to creative mode or spectator mode with or

With elytra
The simplest and probably the best way to fly in survival mode without cheats is by using an elytra. Using elytra, the player can glide to their destination with ease. Firework rockets or a Riptide trident can be used to extend and speed up the flight.

Videos
Adding your own videos to this article will be extremely appreciated. Don't be afraid to edit!