Minecraft – the Java Edition method of Bedrock Edition’s /ride command

minecraft-commandsminecraft-java-edition

Story

We all know that for the most part, the Bedrock Edition of Minecraft has a very limited command supply, and no NBT access from commands. However, Bedrock Edition has gained a unique trick as of the 1.16.100 update: the /ride command. What is it used for? Let the Minecraft Wiki explain:

Used to make entities ride other entities, stop entities from riding, make rides evict their riders, or summon rides or riders.

Problem

In Java Edition, the /ride command doesn't exist, which makes it one of the only Bedrock Edition-exclusive commands. While it may be easy to summon stacked entities through commands like these, nothing has been documented yet to make two existing entities ride each other.

Let's show you a few /ride command samples, and the ones that you must find Java Edition workarounds for:

  1. ride <riders: target> start_riding <ride: target> [teleportRules: TeleportRules] [howToFill: FillType]
    

    This command is used to select two existing entities and make them ride on top of each other. rider rides on top of ride, and teleportRules shows whether to make the passenger move to the ride to begin riding, or vice versa. fillRules comes into effect if multiple riders are specified, but we won't need that much detail.
    Java Edition equivalent: Unknown. This question's task is for you to find or create a command contraption that will emulate the behaviour above!

  2. ride <riders: target> stop_riding
    ride <rides: target> evict_riders
    

    These commands are very similar, so I've grouped them as part of one example. They are used to end rides and make riders dismount from their rides. You either target some passengers or some rides, and use evict riders if you're targeting the rides, or use stop_riding if you're targeting the passengers. The selected entities will dismount from their rides, or evict the rider immediately on top of them.
    Java Edition equivalent: Unknown. This question's task is for you to find or create a command contraption that will emulate the behaviour above!

  3. ride <rides: target> summon_rider <entityType: EntityType> [spawnEvent: string] [nameTag: string]
    ride <riders: target> summon_ride <entityType: EntityType> [rideRules: RideRules] [spawnEvent: string] [nameTag: string]
    

    These two syntaxes are used if you have either the passenger or the ride, but not both, and want to summon the other and begin a ride.
    Java Edition equivalent: If you are working from scratch (no entities at all), you can summon a ride with a passenger on it with one command, like so:

    summon cow ~ ~ ~ {Passengers:[{id:"minecraft:pig"}]}
    

Core question

How can one achieve the effects of BE's /ride command using only Java Edition commands?

Rules:

  1. When creating your JE alternative for syntax #1 above, don't cheat by killing the entity and summoning it as a rider or ride. I need a legitimate move, not a clone and delete.
  2. The official /ride command is restricted to ride combinations available in survival Minecraft. Please do not implement such restrictions on your workaround, because we are already able to summon entities with arbitrary passengers!
  3. If you've found a solution for one of the above, but not all three, please still post the answer to the one you've found! That way, we can all know sooner.
  4. From a post on Reddit on player NBT, modifying player data could potentially kick the player out of the game and force them to log back on. Don't make your command machine do this!

Best Answer

You cannot ride a player or a mob without using any mods / plugins. But it's possible for normal mobs using a command.

I am not sure where did i see it or how can you do it. I only remember where someone made a video about salmon riding on salmon ridinmg on salmon riding on salmon and more.