
DBetterModel
Adds interop between BetterModel and Denizen!
- Загрузки
- 311
- Подписчики
- 5
- Обновлён
- 25 декабря 2025 г.
- Лицензия
- MIT
Опубликован 26 июля 2025 г.
Supported:
Supports BetterModel v1.15.0, Minecraft 1.21.10, Denizen 1.3.1 (7236)
| BetterModel Version | Latest Supported DBetterModel Version |
|---|---|
| 1.15.0 | 5.0.0 |
| 1.14.0-1.14.2 | 4.3.0 |
| 1.13.4 | 4.2.0 |
| 1.13.0-1.13.1 | 4.1.0 |
| 1.11.0 | 4.0.0 |
| 1.10.3 | 3.5.0 (abandoned, will not be released) |
| 1.10.2 | 3.4.0 |
| 1.10.0-1.10.1 | 3.3.0 |
| 1.9.0-1.9.3 | 2.1.0 |
| 1.8.0-1.8.1 | 2.0.1 |
| 1.5.5 | 1.1.0 |
| 1.5.1 | 1.0.0 |
Docs (5.0.0)
Ченджлог
5.0.0Релиз1.21.9, 1.21.10, 1.21.11 · 25 декабря 2025 г.
Feat
- Added bStats metrics integration.
- Added
shadow_radiusmechanism to control bone shadow size. - Added
billboardmechanism support directly toBMBoneTag. - New tags:
<BMBoneTag.local_position>and<BMBoneTag.real_position>. BMModelTagnow accepts mechanisms (tint, glow, etc.) to apply changes to the entire model at once.
Refactor
- Optimized
bmpartcommand: skins now load asynchronously and apply immediately (removed artificial delay). - Updated
<BMBoneTag.global_position>to return a standardLocationTag. - Improved internal rendering logic for better compatibility with BetterModel API.
- Removed forced skin cache clearing to improve performance.
4.3.0Релиз1.21.8, 1.21.9, 1.21.10 · 2 ноября 2025 г.
Added:
- BetterModel 1.14.0 support
4.2.0Релиз1.21.8, 1.21.9, 1.21.10 · 19 октября 2025 г.
Added:
- BetterModel 1.13.4 support
Bug Fixes
- bmmount: Fixed a command argument parsing error that caused a "Too many linear arguments" failure when executing the command.
- bmmount: Refactored the entire command logic to use the BetterModel API directly for mounting and dismounting entities from model bones.
- This resolves the core issue where the command would appear to succeed but had no effect.
- The command now correctly retrieves the
RenderedBoneand itsHitBoxto perform mount/dismount actions. - Added proper error handling to inform the user if the target bone is not a valid seat (i.e., not tagged with
pin the model file).
4.1.0Релиз1.21.8, 1.21.9, 1.21.10 · 8 октября 2025 г.
Added:
<PlayerTag.limb>: Returns the MapTag of the player’s limb animation data. Example:map@[animation_name=roll;loop_mode=loop;default_loop_mode=play_once]<PlayerTag.limb_bones[<model_name>]>: Returns the MapTag of all player limb bones.- BetterModel 1.13.0 support
3.4.0Релиз1.21.6, 1.21.7, 1.21.8 · 30 июля 2025 г.
Fixed:
- Resolved a critical state management issue where applying transformations to a bone (e.g.,
scale,item,offset) would reset any previously applied transformations. The bone's state is now persistent across separate commands, allowing for cumulative adjustments.
Added:
- New
offsetMechanism: Added anoffsetmechanism toBMBoneTag. This allows scripters to apply a local positional offset to a bone using aLocationTagwithout altering its currently displayed item or scale. Syntax:adjust <bone> offset:<location>. - New
view_rangeMechanism: Added aview_rangemechanism toBMBoneTag. This allows scripters to set the render distance of a bone's display entity in blocks, using a decimal value. This is useful for hiding model parts in certain camera perspectives. Syntax:adjust <bone> view_range:<#.#>.
Changed:
- The
itemmechanism forBMBoneTaghas been refactored. It no longer accepts aLocationTagfor an offset. Its sole purpose is now to set theItemTagfor the bone, preserving any existing offset or scale.
3.2.0Релиз1.21.6, 1.21.7, 1.21.8 · 27 июля 2025 г.
Refactored:
- Extracted core bone manipulation logic from
BMBoneTaginto the newnet.openproject.dbettermodel.api.BMBoneAPI class. This significantly reduces complexity in the Denizen object layer, improves code structure, and enhances reusability. - Simplified
BMBoneTagto act as a lightweight proxy, delegating all mechanism logic (tint, visible, item) to the newBMBoneAPI.
Added:
- New API Class: Introduced
net.openproject.dbettermodel.api.BMBone, a high-level API for programmatic control over individual model bones. It provides simplified methods for tinting, visibility (global and per-player), item setting, and scaling. - New Mechanism: Added a
scalemechanism toBMBoneTag. This allows scripters to adjust the non-uniform scale of a bone's displayed item using aLocationTagas a vector. - New Command Argument: Added an optional
hide:<player>argument to thebmlimbcommand. This allows hiding all of the target player's active models from a specific observer player.
Changed:
- Updated the syntax of the
bmlimbcommand to include the new optionalhideargument. - Modified
BMLimbCommand'sprocessing logic to interact with the target player'sEntityTrackerRegistryto apply per-player visibility changes when thehideargument is used.
3.1.0Релиз1.21.6, 1.21.7, 1.21.8 · 26 июля 2025 г.
for BetterModel v1.10.1, MC 1.21.4, Denizen 1.3.1 (7144)
Added:
- Bone Visibility Mechanism (
visible): Implemented a new mechanism forBMBoneTagto control bone visibility. It supports both global toggling and per-player visibility changes via packet manipulation. [EXPERIMENTALLY, THERE ARE PROBLEMS] - Bone Item Mechanism (
item): Introduced a mechanism forBMBoneTagthat allows setting a customItemTagas the bone's model, with optional support for a localLocationTagoffset. [This mechanism previously existed, but has been added again] - Configurable Skin Application Delay: Introduced a new option in
config.yml(options.skin-apply-delay-ticks) to allow server administrators to define the delay before a player skin part is applied to a model bone via thebmpartcommand. This provides greater flexibility and control over the timing of asynchronous operations, enabling fine-tuning for server performance and skin-fetching reliability. - Dynamic Skin Part Command (
bmpart): Implemented the newbmpartcommand to interface with BetterModel's skin and bone APIs. This command allows scripts to map a model bone to a player's skin part (e.g., head, arm), enabling dynamic model customization. The feature utilizes a customBoneItemMapperin conjunction withSkinManager#removeCacheto ensure skin textures are fetched and applied correctly, even when updated in real-time by other plugins. - SkinsRestorer Hook, new debug, new config and more
Комментарии
Загружаем…
