▶️ ЗАБЕРИ СВОИ 8 ПОДАРКОВ 🎁 ПРИ СОЗДАНИИ СВОЕГО МАЙНКРАФТ СЕРВЕРА
Моды/Emote

Emote

Server-side emotes using display entities

Оцените первым
256
2
Все версииEmote 0.5.0

Emote 0.5.0

Beta13.07.2026

Список изменений

0.5.0 Update

Version 0.5.0 is a major update that adds Minecraft 26.2 support, fully server-side player skins, a redesigned emote datapack format, emote search, and simultaneous playback of the same emote.

Existing 0.4.0 datapacks and configuration files must be updated to the new format.


Fully Server-Side Player Skins

In 0.4.0, both the server and client needed the mod installed to apply player skins to emotes. The server provided temporary skin URLs, while the client mod replaced textures during rendering.

Version 0.5.0 removes the client-side skin replacement system and temporary skin server. The server now applies MineSkin profiles directly to the emote’s display entities.

  • When a MineSkin API key is configured, player skins are visible even to players without the client mod. The skin is divided and applied to the head, body, arms, and legs, including displays nested several levels below the root entity.

  • The client mod is no longer required for player skins. It is only needed for optional client features such as the emote wheel and camera control. A MineSkin API key is still required to apply player skins on the server.

  • If the MineSkin API key is missing or the player’s skin cannot be prepared, the emote will still play. Player skin replacement will be skipped, and the original textures included in the datapack will be used.

MineSkin processing has also been improved. Processed textures are cached based on their image contents and model type. Pending MineSkin job IDs are saved, allowing the server to resume an existing job instead of submitting the same request again.

When MineSkin rate limits a request, the server reads the provided retry delay before trying again. The job polling interval can be configured with mineskin_poll_interval_seconds, and external API operations run separately from the main server thread.

The old player_skin_port setting has been removed along with the temporary skin server.


Simultaneous Playback of the Same Emote

Multiple players can now play the same emote simultaneously.

Previously, starting another emote from the same datapack namespace could remove existing entities and animation schedules, interrupting another player who was already using that emote.

  • Version 0.5.0 tracks each player’s emote root and display entities by UUID. Stopping or moving only removes that player’s emote, while other instances of the same emote continue playing.

  • Player skins are applied through each player’s specific emote root. Nearby instances of the same emote will no longer receive another player’s skin.

  • Players using the same emote share one animation timeline. A player joining an emote already in progress starts from its current frame. The animation schedule and remaining entities are cleaned up when the final player stops.

An issue where the mod could not find the emote root immediately after creation has also been fixed. The root is now detected on the following server tick before alignment, animation playback, and skin application are performed.


Redesigned Emote Datapack Format

In 0.4.0, pack.json contained each datapack namespace, emote name, description, command name, default animation, and playback options.

Version 0.5.0 simplifies the structure so that one datapack represents one emote. Each datapack must now contain an emote-datapack.json file, which the server reads to register the emote automatically.

  • emote-datapack.json contains the metadata schema version, display name, description, command name, playback function entrypoint, and whether the actual player should be hidden. Datapacks without valid metadata, a create function, or the configured entrypoint will not be registered as emotes.

  • The previous multi-animation and default_animation_name systems have been removed. Version 0.5.0 executes one entrypoint defined by the datapack. To create a looping emote, set its looping function as the entrypoint.

  • The old options: "loop" and options: "visible_player" settings are no longer used. Looping behavior is determined by the entrypoint, while player visibility is controlled through the hide_player metadata field.

As a result, /emote play <emote> <animation> has been removed. Emotes are now played using /emote play <emote>, and the emote wheel displays registered emotes instead of individual animations.

Existing 0.4.0 datapacks do not contain the required metadata and must be converted to the new format before they can be used with 0.5.0.


Redesigned Configuration Format

The previous config/emote/pack.json file has been replaced by config/emote/packs.json.

Names, descriptions, commands, and animation details are now stored in each datapack’s emote-datapack.json. The new packs.json only controls whether a namespace is enabled and whether it requires an additional permission.

{
  "packs": {
    "hello": {
      "enabled": true,
      "permission": ""
    },
    "vip_dance": {
      "enabled": true,
      "permission": "emote.pack.vip"
    }
  }
}

Emotes not listed in packs.json are enabled by default and do not require an additional permission. Set enabled to false to disable a specific emote, or set permission to restrict it.

Configuration reloads are now safer when a file contains a value with the wrong type. If config.json or packs.json cannot be read correctly, the invalid configuration will not be applied. The currently loaded configuration will remain active, and details will be written to the server log.


Emote Search

A new search menu has been added to make it easier to find emotes on servers with large collections.

  • Use /emote search to open the search input or /emote search <query> to search directly. Searches include the emote’s display name, command name, and description.

  • Exact matches appear first, followed by names and commands beginning with the query, then results containing the query elsewhere.

  • Search results are divided into pages when necessary, and the query is preserved while changing pages. Unnecessary search buttons are hidden on result pages, and emote dialogs can now be closed with Escape.


Permissions and Command Handling

  • Default emote permissions now allow regular players to use emote menus, search, playback, and stopping without requiring additional configuration.

  • Server administrators can use emote_permission in config.json to set the base permission for emote features. Additional restrictions for individual emotes can be configured through each namespace’s permission field in packs.json.

  • Emote wheel requests now use the same server playback process as /emote play. Both paths perform the same emote lookup, permission checks, skin preparation, and playback handling.

The primary commands are now:

/emote
/emote search
/emote play <emote>
/emote stop
/emote reload

Minecraft 26.2 Support

Minecraft support has been updated from 26.1 to 26.2. The minimum Fabric Loader version has also changed from 0.18.5 to 0.19.

Java 25 and Fabric API are required. Fabric Permissions API is included with the mod.

Core emote playback remains fully server-side. The client mod is optional and is only needed for features such as the emote wheel and camera control.


Other Fixes

  • Emote playback no longer fails when the MineSkin API key is missing or a player skin cannot be prepared.

  • Pending entity creation and skin application tasks are cleaned up when an emote stops or a player disconnects.

  • Active emotes and pending operations are cleaned up during server shutdown and datapack reloads.

  • Playback state synchronization between the server and client emote wheel has been improved.

Файлы

emote-0.5.0.jar(174.29 KiB)
Основной
Скачать

Метаданные

Канал релиза

Beta

Номер версии

0.5.0

Загрузчики

Fabric

Версии игры

26.2

Загрузок

4

Дата публикации

13.07.2026

Загрузил

ID версии

Главная