Johnny Puskar
- johnnyhotshotmc
- johnnyhotshotmc@gmail.com
- Europe/Stockholm
- Yes
- No
If you create an advancement with criteria that has one trigger, an "enter_block" trigger with no extra data, it will execute more than 20 times per second (multiple times per tick).
It
seems to detect multiple blocks (like when a player is a little off the side of oneblock,but not completely), even though the player should only be able to be standing in one kind of block at a time.This breaks down systems that rely on advancements to trigger 20 times per second without external command blocks, as the clock speed will fluctuate as the player moves around and enters different amounts of blocks at once.
If you create an advancement with criteria that has one trigger, an "enter_block" trigger with no extra data, it will execute more than 20 times per second (multiple times per tick).
It detect the block the player is in both on their head and feet, triggering the advancement once for each. Also, when a player is between two blocks, it will trigger the advancement FOUR times, once for their head and feed on each block. This can be increased to 8 times, and even 12 times when in the air or standing on a slab. This means the commands run 240 times per second, rather than 20.
This breaks down systems that rely on advancements to trigger 20 times per second without external command blocks, as the clock speed will fluctuate as the player moves around and enters different amounts of blocks at once.
If you create an advancement with criteria that has one trigger, an "enter_block" trigger with no extra data, it will execute more than 20 times per second (multiple times per tick).
It detect the block the player is in both on their head and feet, triggering the advancement once for each. Also, when a player is between two blocks, it will trigger the advancement FOUR times, once for their head and feed on each block. This can be increased to 8 times, and even 12 times when in the air or standing on a slab. This means the commands run 240 times per second, rather than 20.
This breaks down systems that rely on advancements to trigger 20 times per second without external command blocks, as the clock speed will fluctuate as the player moves around and enters different amounts of blocks at once.
Steps to recreate
1. Put the main.json file into a folder called 'test' in the data/advancements folder
2. Open world
3. Place down repeating command block with say command in it, and set to always active (to see what 20 tps looks like)
4. Observe how the amount of messages from the advancement between the 20 tps command block is always larger than 1, and changes as you move around
If you create an advancement with criteria that has one trigger, an "enter_block" trigger with no extra data, that has a command reward where it revokes itself, it will execute more than 20 times per second (multiple times per tick).
It detect the block the player is in both on their head and feet, triggering the advancement once for each. Also, when a player is between two blocks, it will trigger the advancement FOUR times, once for their head and feed on each block. This can be increased to 8 times, and even 12 times when in the air or standing on a slab. This means the commands run 240 times per second, rather than 20.
This breaks down systems that rely on advancements to trigger 20 times per second without external command blocks, as the clock speed will fluctuate as the player moves around and enters different amounts of blocks at once.
Steps to recreate
1. Put the main.json file into a folder called 'test' in the data/advancements folder
2. Open world
3. Place down repeating command block with say command in it, and set to always active (to see what 20 tps looks like)
4. Observe how the amount of messages from the advancement between the 20 tps command block is always larger than 1, and changes as you move around
Windows 7 64-Bit
Java Version 8 Update 66 (build 1.8.0_66-b18)
If you use a function to run two teleportation commands on an entity at once, the entity will only be moved by the final command. Without looking into the code, I'd warrant a guess that each teleportation command is overwritten by the next one (i.e. it applies the transformation to the entities coordinates at the beginning of the tick, not accounting for any previous teleportations), so only the last one actually updates the entities position.
I believe that while it is a separate issue from MC-122118, it is caused by the same underlying problem.
Steps to Recreate
1. Create a function that has 2 commands: "/tp @s ~ ~5 ~" and "/tp @s ~1 ~ ~"
2. Run that function from the chat
3. Notice how the player will only move to the side one block, but will not move up 5 blocks.
EDIT: After reading the resolution for MC-122726 I now believe that this is working as intended. Unfortunately, I cannot seem to delete this post... So, yeah.
When using /execute in <dimension> to teleport between dimensions (such as running the command /execute in minecraft:the_overworld run tp @s ~ ~ ~ while in the Nether), potion effects will disappear for around 10 to 20 seconds and will not affect the player during that time. This appears to work with any potion effect, but it is most noticeable using an effect with some sort of visual indication of it working, like levitation, blindness, or nausea. This bug does not occur when using a Nether or End portal, only using commands. The timer for the potion still counts down while it is disappeared.
Steps to Recreate:
- Create a new creative world with cheats enabled
- Give yourself a potion effect, either by drinking a potion from the creative menu or by running a command such as /effect give @s minecraft:levitation 90 1 true
- Teleport yourself into the Nether using a command such as /execute in minecraft:the_nether run tp @s ~ ~ ~
- After arriving in the Nether, the potion effect will appear to have been removed, but will reappear after 10-20 seconds and begin to affect the player again.
Link to Video with Bug:https://streamable.com/re4vx

