Long-Standing Bug Fixes

Quick rating

Community listing page, reviews may not be monitored by the author.

Long-Standing Bug Fixes

No reviews yet

Fixes confirmed bugs that have stayed open for years: campfires and comparators, golem poppies, burning skeleton arrows, wind charges and items.

Mod Loaders
Minecraft
26.3 26.2

About

Description

Some bugs on Mojang's tracker have been confirmed for years and are still open. This mod fixes a handful of them. Every fix is small, does exactly what the bug report asks for, and can be turned off on its own.

Please report bugs here.

The fixes

MC-166272: comparators can't read campfires. Every other block that holds items gives a comparator signal, but campfires don't. Now they do, the same way a container would: 4 for one item, 8 for two, 11 for three, 15 for four. You can use that to tell when food is done or when a slot is free.

MC-159069: baby villagers ignore the iron golem's poppy. Up to 1.13, a baby villager would walk over to an iron golem holding out a poppy and take it. Since the villager AI was rewritten in 1.14 they ignore it. Now the nearest baby villager comes over again and takes the flower.

MC-217397: burning skeletons don't shoot burning arrows. Up to 1.10, a skeleton that was on fire shot burning arrows, more often the higher the local difficulty. That stopped when wither skeletons were split off. It works again, with the same rule as back then.

MC-280273: wind charges don't move dropped items (1.21.5 and newer). Since 1.21.5, dropped items ignore wind charges completely. Now a wind charge blows them away again. It still never destroys them, and other explosions are left alone.

MC-219854: spectators take void damage. Spectators were made immune to the void once, and then started taking void damage again. Staff watching from below an End island die. Now spectators ignore void damage, and nothing else changes.

MC-168976: a broken spawner floods the log (1.21.1). A spawner whose entity data has a broken custom name logs a warning with a full stack trace on every spawn attempt. Each broken name is now logged once.

MC-186909: a lit creeper eats your flint and steel. Once a creeper is lit, every further click on it with flint and steel still costs durability, and every click with a fire charge still uses one up. Now clicking a creeper that's already lit does nothing.

MC-261789: falling blocks break below Y=0. Sand or gravel that lands fast below Y=0 can stop a tiny fraction of a block too low, and then it breaks into an item instead of turning into a block. Contraptions that drop sand from high up lose blocks that way. Now it lands as a block.

MC-269636: "Lighten Up" for taking the wax off. The advancement is for scraping a lit copper bulb so it shines brighter, but taking the wax off a waxed bulb gave it too. Now only scraping counts. "Wax Off" works the same as before.

MC-210491: sculk sensors ignore batted fireballs. Hitting any entity makes a vibration, except batting a fireball back. Now that counts too, so a sculk sensor can tell a ghast fight is going on.

MC-265635: a cat on one chest blocks the chest below it too. Stack two chests and let a cat sit on the top one, and neither opens. The game looks for cats in the space above a chest, and a cat sitting on the chest above reaches down into it. Now a cat only keeps the chest it's sitting on shut.

MC-135198: dispensers can't light big portals. A dispenser with flint and steel only lights a nether portal if the spot in front of it touches the frame. Aim it at the middle of a 5x5 portal and nothing happens. Now any empty spot inside a finished frame works.

MC-278572: items slide down honey twice as fast (1.21.2 and newer). Since 1.21.2, dropped items, TNT and minecarts slide down the side of a honey block at about 0.16 blocks a tick instead of 0.09. Builds from 1.21.1 that rely on that speed, like the minecart storage systems the bug report mentions, run too fast or break. They slide at the 1.21.1 speed again. Mobs and players are not affected.

MC-279003: explosions don't move wind charges (1.21.4 and newer). TNT and other wind charges stopped pushing wind charges in 1.21.4. Now an explosion moves them like any other entity again.

MC-264285: an unbreakable flint and steel vanishes on a creeper. Lighting a creeper uses up igniters that can't take damage, which is meant for fire charges. An unbreakable flint and steel counted as one of those and was gone after one click. Now it stays in your hand.

MC-179072: creepers still blow up after you switch to creative. A creeper that had started to hiss kept going when you switched to creative or spectator, and blew up next to you. Now it calms down, as if you had walked away.

MC-262422: lightning aims at spectators. In a thunderstorm, lightning picks a random living thing near the spot it hits, and that included spectators. Now spectators are skipped.

MC-153010: foxes ignore doMobLoot. With doMobLoot off, mobs drop nothing when they die, except foxes, which still dropped whatever was in their mouth. Now they follow the rule too.

MC-248588: burning mobs drink your cauldrons with mobGriefing off. mobGriefing off is supposed to stop mobs from changing blocks, but a burning zombie that stepped into a water or powder snow cauldron still used up a level. Now mobs leave the cauldron alone (they still stop burning). Players work as before.

MC-310859: Knockback on a spear does nothing to players (26.2 and newer). A spear pushes its target twice: a small fixed push, then the weapon's own knockback, which is where the Knockback enchantment goes. Players only ever got the first one, so Knockback spears were useless in PvP. Now players get both, the same as mobs.

MC-164171 / MC-109083: dying to a wither skull or ghast fireball deletes your stuff. These projectiles hurt what they hit and then explode, in the same moment. If the hit kills you, your inventory drops and the explosion destroys all of it, so there's nothing to go back for. Now the items you drop survive that blast. Items that were already lying around are blown up as usual.

MC-17876: you lose your bonus hearts when you log in. Health is loaded before the extra max health from your armour is put back, so anyone above 20 health comes back with 20 after a relog, and mobs lose it when their chunk reloads. Now the saved health is restored once the gear's bonus is back.

MC-111801 / MC-253476: relogging skips item cooldowns. Cooldowns weren't saved, so logging out and back in got rid of an ender pearl cooldown or a shield an axe had just disabled. After going through a portal, your game also forgot running cooldowns while the server still had them. Now they're saved with the player and sent to your game again after a dimension change.

MC-276819: kicked for spamming on a lagging server. The chat, command and item-drop spam limits cool down once per server tick. When the server runs slow, they cool down slower in real time, so normal chatting or clicking items out of JEI gets you kicked. Now they cool down by the real time that passed. At a full 20 ticks a second nothing changes. If you also run Spam Kick Fix, which adds configurable limits, this part is left to it.

MC-262810: wandering traders don't run from ravagers. Traders run from zombies, illagers, vexes and zoglins, but used to stand still while a ravager walked up to them. Now they keep their distance from ravagers too.

MC-205843: shulkers get Levitation. Shulkers are stuck to their block and Levitation can't lift them, but they still took the effect and swirled its particles. Now they don't get it at all.

MC-95782: iron golems attack their own team. Golems leave hostile mobs on their team alone, except when they bump into one, which made them attack it anyway. Bumping into a teammate no longer starts a fight.

MC-302519: respawning in the bedrock in Adventure mode (1.21.11 and newer). When the default game mode is Adventure, the game looks for open space straight above and below the world spawn. Nothing keeps the spawn chunk loaded since 1.21.9, and in an unloaded chunk every block counts as open space, so you end up at the bottom of the world. Now the chunk is loaded first and you land on the surface.

MC-298489: elytra wear out under water. If you glide into water, the game still treats you as gliding until you touch the ground, so the elytra keeps losing durability while you sink or swim. Now gliding ends as soon as you're in water.

MC-308361: sulfur cubes from a bucket leave despawning babies (26.2 and newer). A sulfur cube you let out of a bucket never despawns, but the two small cubes it splits into when it dies used to despawn as soon as you walked away. They're kept now, like their parent.

MC-262182: mobs carrying a rider can't attack. Since 1.19.4 a mob riding another mob steers it, and the mount's own movement goals are switched off so the two don't fight over the controls. Melee attacks were switched off with them, so a spider, zombie or iron golem with something on its back never hit anything, even with its target right in front of it. Now a mount that fights in melee still strikes a target in reach, once a second like normal. The rider keeps steering.

MC-99601: /whitelist add freezes the server. /whitelist, /op, /ban and friends ask Mojang about any name the server hasn't seen before, and the whole server waits for the answer, often for seconds. When a player or the console types one of these, the lookup now happens in the background and the command finishes on its own a moment later. Command blocks, functions and RCON keep the old behaviour, since they need the result straight away.

MC-213961: swapping the top dripleaf stem breaks the leaf. You can swap any stem of a big dripleaf for another block and the plant stays put, because stems check their support a tick later. The leaf on top checked straight away, so swapping the stem right under it always broke the leaf. Now the leaf waits a tick too.

Optional, off by default

These change something players use on purpose, so they stay off unless you switch them on in the config.

MC-101851: snowballs blow up end crystals. Snowballs, eggs and ender pearls do no damage, but one hit sets off an end crystal. Lots of players do this on purpose when they have no bow, so this fix is off unless you turn it on, for servers that don't want crystals popped from afar.

MC-163962: villager demand falls forever. Each time a villager restocks a trade nobody used, that trade's demand drops a bit more, with no floor. On an old world it sits thousands below zero, so heavy trading never pushes the price up again until it climbs all the way back. Demand now stops at 0.

MC-147694: mobs don't bounce off shields (1.21.1). Up to 1.13, a mob that hit your raised shield was knocked back a little. Since 1.14 it just stays in front of you and keeps swinging. This puts the knockback back. Shields were reworked in 1.21.5, so this one is only for 1.21.1.

Config

config/long_standing_fixes.properties has one line per fix, named after its bug number. Set one to false to get the vanilla behaviour back, or set an optional one to true to turn it on. (Since 1.10.0 the three optional fixes start off on new installs; if you already have the config file, it keeps your settings.)

FAQ

Client or server? The server needs it (or your game, in singleplayer). Players don't need it to join.

Does it need anything else? No.

How is it tested? Every fix has two game tests. One checks the fix works. The other runs the same setup without the fix and checks that the bug is still there in vanilla, so we notice when Mojang fixes one. They run on 1.21.1, 1.21.11, 26.2 and 26.3, on both NeoForge and Fabric.

Can I use it in my modpack? Yes, go ahead, no need to ask.

MIT. Developed with AI assistance. Source: https://github.com/cambrova/long-standing-bug-fixes