mojira.dev

pokechu22

Assigned

No issues.

Reported

MC-219967 IndexOutOfBoundsException occurs instead of a "Bad packet id" message Fixed MC-189095 Holding right-click prioritizes continuing to use off-hand item over tilling with hoe in main hand Confirmed MC-181823 Phantom attack damage attribute resets on world load if size is nonzero Confirmed MC-181129 Guardian beam is not rendered if targeted entity has ID 0, as it does not use the OptionalInt metadata type Confirmed WEB-1461 "migrated": false returned by /authenticate endpoint even for migrated accounts Awaiting Response MC-142621 "Invalid book tag" is not translatable Fixed MC-140959 small_fireball entity ID is broken Fixed MC-139631 Light levels in the F3 debug menu aren't accurate when standing on soul sand Confirmed MC-138918 Update light packet uses the wrong mask for empty block light Fixed MC-138912 Failed backup message isn't translated properly Duplicate MC-138860 Burning entities inside of spawners have incorrect billboarding on the fire effect Confirmed MC-138704 The sound "mob/panda/worried/worried1" never plays Works As Intended MC-138703 Iron trapdoor opens and closes captions are reversed Duplicate MC-137746 Crash when generating at exactly the top of the world Fixed MC-137126 Worldborder set size error message translation keys have an extra period at the end Fixed MC-136876 Superflat preset names do not update if the language is changed after the presets GUI has been opened Duplicate MC-136758 End gateway beam stutters during its animation because it only uses integer heights Confirmed MC-136757 End gateway magenta beam height varies based on the distance from the player Fixed MC-136756 End gateway beams disappear when the end gateway block is not visible Confirmed MC-135510 Force JVM crash fails to crash the JVM when LWJGL is in debug mode, instead merely crashing the game Won't Fix

Comments

Mojang is still using LWJGL 3.3.3 as of 1.21.4, so that makes sense.

The main cause of this behavior is MC-255057 (continuing to destroy a block only cares if the block that was last targetted is the same as the current block, not if you were still destroying a block).

This was introduced in 14w29a (a 1.8 snapshot), which changed MultiPlayerGameMode.stopDestroyBlock from

public void resetBlockRemoving()
    {
        if (this.isHittingBlock)
        {
            this.netClientHandler.addToSendQueue(new C07PacketPlayerDigging(1, this.currentBlockX, this.currentBlockY, this.currentblockZ, -1));
        }

        this.isHittingBlock = false;
        this.curBlockDamageMP = 0.0F;
        this.mc.theWorld.destroyBlockInWorldPartially(this.mc.thePlayer.getEntityId(), this.currentBlockX, this.currentBlockY, this.currentblockZ, -1);
    }

to

public void resetBlockRemoving()
    {
        if (this.isHittingBlock)
        {
            this.netClientHandler.addToSendQueue(new C07PacketPlayerDigging(C07PacketPlayerDigging.Action.ABORT_DESTROY_BLOCK, this.currentBlock, EnumFacing.DOWN));
            this.isHittingBlock = false;
            this.curBlockDamageMP = 0.0F;
            this.mc.theWorld.sendBlockBreakProgress(this.mc.thePlayer.getEntityId(), this.currentBlock, -1);
        }
    }

i.e. prior to that version, if a block was no longer targetted, then the break progress would be reset to 0, making things mostly behave normally (though it still would fail to tell the server that it started breaking the block, and redstone ore wouldn't begin to glow in this case).

I'm not sure why this change was made. The only relevant issue fixed in 14w29a is MC-676, but I don't think this change was directly part of that fix. So perhaps it was an intentional change, but it wasn't included in the changelog and is implemented fairly awkwardly.

Based on a discussion in #mcdevs on around September 11 2024, this was probably fixed in 1.19.4/23w03a due to the packet bundle feature (mentioned on https://www.minecraft.net/en-us/article/minecraft-snapshot-23w03a), which should eliminate the chance of an item spawning and then the entity metadata getting processed on the next tick. I haven't had any time to do any testing, though, so I'm marking this issue as Awaiting Response for now.

(The issue in #mcdevs was with someone who was implementing a custom server from scratch, and having items always disappear when dropped from breaking a block. They determined that their issue started happening in 1.19.4, and the issue went away when they implemented packet bundles. So presumably the code that removes items that have no entity metadata still exists, but hopefully packet bundles prevent it from being an issue with the official server software.)

The issue as I understand it is that individual letters don't show up depending on where they are even when there's direct line of sight to the player. The whole name tag not being visible when the player is behind blocks is separate behavior (which seems unlikely to be changed by this fix).

Perhaps there's a situation where part of the nametag is visible but other parts are behind blocks that might be affected (or a long name tag peeks through the corner of two blocks, revealing a player that otherwise is hidden), but those seem like much more niche situations.

I don't have any good method of reproducing this. The issue still exists in 1.20.2 as it still used a VarInt instead of an OptVarInt then (see https://pokechu22.github.io/Burger/1.20.2.html#entities:guardian), but entity metadata broke in Burger for 1.21 (see https://pokechu22.github.io/Burger/1.21.html#entities:guardian) due to other internal changes so I can't directly confirm it.

I believe even in 1.15.2 this was not directly reproducible due to entity IDs starting at 1, and entity IDs would need to overflow for that to happen. That used to be a much bigger issue as mob spawning would use up an entity ID for each attempt at spawning an entity, even if it was rejected, so it was possible for it to go through all 4 billion values eventually on a long-running server, but I believe that was changed a while back (I don't remember when) and no longer happens. Otherwise it's mostly an easily avoidable gotcha with the protocol that would come up with e.g. custom servers.

GLFW merged the change to fix RDP at https://github.com/glfw/glfw/pull/2431 (I'm pretty sure it's included in the GLFW 3.4 release). LWJGL hasn't yet updated to the new GLFW version as far as I can tell though, so Mojang can't update to a new LWJGL version to fix it just yet.

I'm pretty sure the that this was fixed in 1.12 (in that I tested it and confirmed that "Kicked for Spamming" shows up). I also can confirm that there is a disconnect.spam translation key (and I'm pretty sure if that existed in the past too, it just wasn't being translated).

If this has started occurring again in more recent versions, it'd be better to create a new ticket, as it probably regressed due to something else. If I instead messed up with my testing and it also occurs in 1.12, I can reopen this ticket.

Can confirm, seems to be present in 1.20.1 and fixed in 23w31a looking at code (I haven't attempted to do anything with wireshark or similar to verify that way though)

hopper.minecraft.net as a service no longer exists, so this issue no longer applies. It used to be a crash report analysis system, and loading the given link would show more info about a specific crash. However, it was retired a long time ago, and the troubleshooting documentation that was also hosted on it was relocated to the third-party site https://minecrafthopper.net/.

Here's an archived example. It turns out that this one is also an example of this bug, although this report was in multiplayer instead of singleplayer so it is less obvious if the server was modded or not.

In any case, hopper itself is long gone, so this issue no longer applies.

My thought on this is that it is stupid behavior on OSX that scrolling while shift is held is always reported as horizontal scrolling, rather than this being application-defined behavior (that would be part of the standard UI widgets that applications use). From what I remember from my research several years ago, there isn't any way to opt out of that (and, if I recall correctly, it applies even if you have a mouse that also has horizontal scrolling built in, where the shift behavior is redundant). (I'm also not an apple developer, so maybe there's some advanced/poorly documented API that can be used for this. But I wasn't able to find one when I looked for it back then.)

On the other hand, you definitely can work around the issue; older versions of Minecraft used LWJGL 2, which didn't expose horizontal scrolling to games, and also converted horizontal scrolls to vertical scrolls which worked around the issue. 1.13 switched to LWJGL 3, which does separately report horizontal and vertical scrolling. The issue could still be worked around by still using the same horizontal-to-vertical conversion (at least for the hotbar), but that also means that actual horizontal scrolling would scroll the hotbar. (I also vaguely recall that there was some oddness with horizontally scrolling left and right being backwards compared to scrolling up and down, i.e. it wouldn't be possible to have scrolling left select the item to the left but scrolling up having the same result as scrolling up while holding shift. I'm not 100% sure that's actually the case, though; please do let me know if that's not an issue with the previously mentioned workarounds.)

Duplicate of MC-71750 - the glowing effect is implemented with a shader (and that shader isn't special compared to the shaders that are used when spectating mobs (creepers/spiders/endermen)). That issue is resolved as invalid because the fboEnable option was removed in Minecraft 18w44a (a 1.14 snapshot), so both it and this issue no longer apply to current versions.

The wiki is referring to the falling block entity and what happens when you use /summon with one for a cactus (e.g. /summon minecraft:falling_block ~ ~40 ~ {BlockState:{Name:"minecraft:cactus"},Time:1}), not a dropped item. That said, the information on the wiki was wrong; sand and gravel convert to items (which are then often destroyed) which is the same as a summoned falling cactus. I've edited it to make it clearer.

The behavior with items (which is what you'd get with the setup in the screenshot) being destroyed by cactus is different, and is covered by MC-3532.

This issue seems to have been introduced in 1.16-pre5 when MC-180867 was fixed. That version added the following code to JukeboxBlock.setPlacedBy (as noted by @unknown):

CompoundTag tag = stack.getOrCreateTag();
if (tag.contains("BlockEntityTag")) {
  CompoundTag tag2 = tag.getCompound("BlockEntityTag");
  if (tag.contains("RecordItem")) {
    // Update has_record state
  }
}

21w37a replaced that code with this:

CompoundTag tag = item.getBlockEntityData(stack);
// above is equivalent to stack.getTagElement("BlockEntityTag"), which doesn't create tag if there is no tag
if (tag != null && tag.contains("RecordItem")) {
  // Update has_record state
}

I also am able to reproduce the issue in 1.17.1 but not in 21w37a, so I'm marking it as fixed. (MC-180867 also remains fixed.)

The URL-shortened link points to install.sh in https://github.com/GameParrot/minecraft-mac-window-fix/releases/ . Here's the actual script:

curl -L 'https://github.com/GameParrot/minecraft-mac-window-fix/blob/main/mac-runtime-patch.zip?raw=true' > /tmp/mac-runtime-patch.zip
unzip -o /tmp/mac-runtime-patch.zip -d ~/Library/Application\ Support/minecraft/
rm /tmp/mac-runtime-patch.zip
echo 'Successfully installed. To complete installation, set the Java executable to "'"$HOME"'/Library/Application Support/minecraft/mac-runtime-patch/java-runtime-beta/mclaunch" for Java 17, "'"$HOME"'/Library/Application Support/minecraft/mac-runtime-patch/java-runtime-alpha/mclaunch" for Java 16, or "'"$HOME"'/Library/Application Support/minecraft/mac-runtime-patch/jre-legacy/mclaunch" for Java 8.'

which modifies the JRE configuration used by Minecraft (apparently to fix other issues), and also adds a modified ("mofified") version of libglfw.dylib, based on this code apparently, which makes sense for fixing this issue.

However, I haven't done any further auditing or testing (I don't have a mac), so I can't say with 100% certainty that this is a safe fix. On the other hand, this looks like the steps I would take if I were to make and distribute a fix involving a patched library myself (though when I've done that before, the process was slightly more jank, partially because I was targeting windows which didn't come with curl by default at the time).

@Eric Grimes: if you want to test further, try running each line of the script above one at a time, to determine which one is failing.

I'm not speaking on behalf of Mojang here, but I'm guessing it's because the ender dragon has a complex hitbox compared to most entities (look at it with F3+B). With most entities, the bounding box can work the same if the entity is flipped or not. With the ender dragon, they'd need to flip the sub-entities as well so that the bounding boxes are in the right place, which adds a fair bit of complexity, maybe too much for an easter egg feature. (Again, this is just my guess, though.)

If I recall correctly, Mojang reworked some of the SRV record logic in 1.17 for unrelated reasons (I don't know if there's a public report for it), so it seems plausible that it's fixed in 1.17. I don't know the exact version this was changed in, so I'm resolving as "cannot reproduce". (I haven't attempted to test it myself.)

See this comment for more info; it ignores things that change the FOV modifier, but does look at the FOV option value. Judging only from the duplicates, there was also once an issue where it ignored the FOV option value, but I don't know when/if that changed (and I don't want to separate out that behavior into a new issue because I'm not 100% sure it did change).

The sneaking animation is its own issue (MC-148088). I think the aspect ratio problem should also be created as a separate issue (that should be linked to this one).

The experimental snapshots aren't supported on the tracker (the snapshot is only for testing world generation, and I don't think it has any more general bugfixes in it; feedback for world generation can be posted here though), but thanks for checking.

If you no longer wish to receive emails, click "stop watching this issue" near the top right of the report. People commenting on an issue that they are still running into is normal behavior, and 4 comments over over 4 years is not an excessive number.

Note that there is a second ticket that tracks issues with held item models (though there is some overlap): MC-73186