Перейти к содержимому
Mineforgian

Consumable Optimizer

Handles eating client-side, ensuring servers don't slow down the eating process

575K загрузок177 подписчиковMITfabric

Обновлён 9 июня 2026 г. · опубликован 5 июня 2025 г.

Consumable Optimizer!

This mod enforces more client-sided processing when handling consumable items (any food item).


Information

By default, Minecraft requires the user to wait for a server response before consuming an item. While this delay is hardly noticeable on low ping, it becomes much more noticable on high ping and causes players to be stuck in an eating animation until the server eventually responds. This optimizer ensures all of that processing is done client-side rather than server-side, allowing items to be comsumed with no delay and on the exact tick it should be finished. The server still applies the item's effects (such as absorption or regeneration from a golden apple) while the client handles the actual eating process.

High ping can also occationaly causes desyncs when consuming an item, forcing the server to restart the eating process for the player. This further slows the overall process of consuming an item down even more and makes it feel inconsistent. This optimizer fixes this, by cancelling these recalls from the server when unneeded.

Demonstration Video


Server Opt Out

On servers using popular anti-cheats, such as Grim or Vulkan, it's unlikely for Consumable Optimizer to flag. However, if your server has reports of Consumable Optimizer causing flags or you don't want your player base using the mod, you can opt out using a very simple plugin. Some example code can be found below:

public class ConsumableOptimizerDisable extends JavaPlugin implements PluginMessageListener {

    private static final String S2C_CHANNEL = "consumable_optimizer:disable_payload";
    private static final String C2S_CHANNEL = "consumable_optimizer:handshake_payload";

    @Override
    public void onEnable() {
        this.getServer().getMessenger().registerOutgoingPluginChannel(this, S2C_CHANNEL);
        this.getServer().getMessenger().registerIncomingPluginChannel(this, C2S_CHANNEL, this);
    }

    @Override
    public void onPluginMessageReceived(String channel, Player player, byte[] message) {
        if (channel.equals(C2S_CHANNEL)) {
            Bukkit.getScheduler().runTaskLater(this, () -> {
                if (player.isOnline()) {
                    player.sendPluginMessage(this, S2C_CHANNEL, new byte[0]);
                    getLogger().info("Disabled consumable optimizer for " + player.getName());
                }
            }, 20L);
        }
    }
}

Credits

Версии

ВерсияКаналИграЗагрузчикиДатаСкачать
2.2.2-26.1Релиз26.1, 26.1.1, 26.1.2fabric9 июня 2026 г..jar (146 КБ)
2.2.1-26.1Релиз26.1, 26.1.1, 26.1.2fabric4 апреля 2026 г..jar (146 КБ)
2.2.2-1.21.4Релиз1.21.4fabric14 марта 2026 г..jar (145 КБ)
2.2.1-1.21.5Релиз1.21.8, 1.21.9, 1.21.10, 1.21.11fabric9 марта 2026 г..jar (145 КБ)
2.2.1-1.21.2Релиз1.21.2, 1.21.3fabric9 марта 2026 г..jar (145 КБ)
2.2.1-1.21Релиз1.21, 1.21.1fabric9 марта 2026 г..jar (145 КБ)
2.2.0-1.21.5Релиз1.21.8, 1.21.9, 1.21.10, 1.21.11fabric5 марта 2026 г..jar (144 КБ)
2.2.0-1.21.4Релиз1.21.4fabric5 марта 2026 г..jar (144 КБ)
2.2.0-1.21.2Релиз1.21.2, 1.21.3fabric5 марта 2026 г..jar (144 КБ)
2.2.0-1.21Релиз1.21, 1.21.1fabric5 марта 2026 г..jar (144 КБ)
2.1.0-1.21.5Релиз1.21.8, 1.21.9, 1.21.10, 1.21.11fabric11 января 2026 г..jar (135 КБ)
2.0.0-1.21.5Релиз1.21.8, 1.21.9, 1.21.10, 1.21.11fabric9 января 2026 г..jar (135 КБ)
1.1.0Релиз1.21.6fabric28 июня 2025 г..jar (137 КБ)
1.1.0Релиз1.21.5fabric28 июня 2025 г..jar (137 КБ)
1.1.0Релиз1.21.4fabric28 июня 2025 г..jar (137 КБ)

Показаны последние 15 из 30 версий. Все версии — на Modrinth.

Ченджлог

2.2.2-26.1Релиз26.1, 26.1.1, 26.1.2 · 9 июня 2026 г.

Bump WalksyLib API

2.2.2-1.21.4Релиз1.21.4 · 14 марта 2026 г.

Fix 1.21.4 version not launching

2.2.1-1.21Релиз1.21, 1.21.1 · 9 марта 2026 г.

Bug fixes: Fix ghost consumption, reduced anti-cheat flags

2.2.0-1.21Релиз1.21, 1.21.1 · 5 марта 2026 г.

Reduced anti-cheat flags, Server Opt-Out implementation, Fixed food value desyncs

2.1.0-1.21.5Релиз1.21.9, 1.21.10, 1.21.11 · 11 января 2026 г.
  • Handle entity data updates on client thread instead of the server thread (fixes network crashes)
2.0.0-1.21.5Релиз1.21.9, 1.21.10, 1.21.11 · 9 января 2026 г.
  • Crash Fixes
  • WalksyLib Impl

Полная история изменений — на Modrinth.

Комментарии

Загружаем…