Well after a little playing I think I've come up with something rather suitable. It is not perfect, but it is the closest I think I can possibly get it. You still levitate upward roughly 0.1 blocks every ~30 seconds. So it will lift you 1 block every 5 minutes, but other than that, you pretty much stay in the same place.
Then starting with a repeating, unconditional, always active command block and following with all chain, unconditional, always active command blocks; create a chain executing the following commands in order:
This works in multiplayer, but has nothing set to only apply to specific players, so in its current state will always constantly make all players float. Unless you bug it out by resetting a players floatingPoint score while they have the floating tag. If you want a version that has this feature I can add that for you.
Edit: Reduced command blocks down to 9 from 13 by simplifying some logic.
Well I got bored and this project is actually kinda fun to play with, so I went ahead and actually made this into something.
So now if you ever are not standing on a block you will begin to levitate, if you are levitating over a block that is the same height from which you started levitating you will stop levitating.
If you jump, you will actually go an extra block or two into the air and levitate there, making it hard to get back down, so if you look straight down, you will start dropping the longer you look down for. This can be used to gradually fall back down to the ground.
If you are sneaking (holding shift) and walking along the edge of a block, you can release shift to drop down one block without levitating. If the drop is any higher, you will begin to levitate from ~0.3 blocks below where you fell from.
The best usage for this is to simply walk right off a block and float across the gap to the other side.
So this is going to essentially be the same set up as before, start by setting up the scoreboard objectives:
I'm sure there is some extra stuff that isn't necessary here since I kinda just went straight from the old mechanism to this one instead of remaking the whole thing. For example, the 5th command probably wouldn't have been necessary in the same way if I had remade the way the mechanism begins when someone starts levitating. Instead, setting it to -1 bypassed one whole second of ticks so that the player gets the levitation effect in the same tick instead of having to wait 20 more.
Well after a little playing I think I've come up with something rather suitable. It is not perfect, but it is the closest I think I can possibly get it. You still levitate upward roughly 0.1 blocks every ~30 seconds. So it will lift you 1 block every 5 minutes, but other than that, you pretty much stay in the same place.
Then starting with a repeating, unconditional, always active command block and following with all chain, unconditional, always active command blocks; create a chain executing the following commands in order:
This works in multiplayer, but has nothing set to only apply to specific players, so in its current state will always constantly make all players float. Unless you bug it out by resetting a players floatingPoint score while they have the floating tag. If you want a version that has this feature I can add that for you.
Edit: Reduced command blocks down to 9 from 13 by simplifying some logic.
Thanks! I know how to make it apply to specific players, I actually need armorstands activating all that. So I'll just put an execute @e[type=ArmorStand] ~ ~ ~ in front of everything, and make all the player selectors @a[r=1,...]
Heyo! So I want to effect myself with levitation. But, instead of constantly going up, I want to float in mid-air without going up. So like:
I get levitation for a second, then it makes me stay floating at the spot. Kinda like flying at the same spot, but in survival.
Any idea how to do this? Ask if you need more clarification, I understand.
Well after a little playing I think I've come up with something rather suitable. It is not perfect, but it is the closest I think I can possibly get it. You still levitate upward roughly 0.1 blocks every ~30 seconds. So it will lift you 1 block every 5 minutes, but other than that, you pretty much stay in the same place.
First set up two scoreboard objectives:
Then starting with a repeating, unconditional, always active command block and following with all chain, unconditional, always active command blocks; create a chain executing the following commands in order:
This works in multiplayer, but has nothing set to only apply to specific players, so in its current state will always constantly make all players float. Unless you bug it out by resetting a players floatingPoint score while they have the floating tag. If you want a version that has this feature I can add that for you.
Edit: Reduced command blocks down to 9 from 13 by simplifying some logic.
Well I got bored and this project is actually kinda fun to play with, so I went ahead and actually made this into something.
So now if you ever are not standing on a block you will begin to levitate, if you are levitating over a block that is the same height from which you started levitating you will stop levitating.
If you jump, you will actually go an extra block or two into the air and levitate there, making it hard to get back down, so if you look straight down, you will start dropping the longer you look down for. This can be used to gradually fall back down to the ground.
If you are sneaking (holding shift) and walking along the edge of a block, you can release shift to drop down one block without levitating. If the drop is any higher, you will begin to levitate from ~0.3 blocks below where you fell from.
The best usage for this is to simply walk right off a block and float across the gap to the other side.
So this is going to essentially be the same set up as before, start by setting up the scoreboard objectives:
Then the same chain setup from my previous post with the following commands:
I'm sure there is some extra stuff that isn't necessary here since I kinda just went straight from the old mechanism to this one instead of remaking the whole thing. For example, the 5th command probably wouldn't have been necessary in the same way if I had remade the way the mechanism begins when someone starts levitating. Instead, setting it to -1 bypassed one whole second of ticks so that the player gets the levitation effect in the same tick instead of having to wait 20 more.Regardless, it works well and I am happy with it.
Thanks! I know how to make it apply to specific players, I actually need armorstands activating all that. So I'll just put an execute @e[type=ArmorStand] ~ ~ ~ in front of everything, and make all the player selectors @a[r=1,...]
Easy solution.
.Yup, works!