Mods
Resource Packs
Data Packs
Modpacks
Shaders
Plugins
Mods Resource Packs Data Packs Plugins Shaders Modpacks
Get Modrinth App Upgrade to Modrinth+
Sign in
ModsPluginsData PacksShadersResource PacksModpacks
Sign in
Settings
BetterModel

BetterModel

Lightweight BlockBench model engine for Bukkit | Custom hit-box | Folia supported

7,701
48
Game Mechanics
Library
Utility

Compatibility

Minecraft: Java Edition

1.21.x
1.20.x
1.19.4

Platforms

Bukkit
Folia
Paper
Purpur
Spigot

Supported environments

Server-side

90% of ad revenue goes to creators

Support creators and Modrinth ad-free with Modrinth+

Links

Report issues View source Visit wiki Join Discord server
Sponsor on GitHubDonate on PayPal

Creators

toxicity188
toxicity188 Member

Details

Licensed MIT
Published 7 months ago
Updated yesterday
DescriptionGalleryChangelogVersions

0

Welcome to BetterModel!

⚡Lightweight BlockBench model engine for Bukkit

Maven Central Version CodeFactor Total line Discord GitHub Issues or Pull Requests bStats Servers



This plugin implements the fully server-side 3D model by using an item-display packet.

  • Importing Generic BlockBench model (.bbmodel)
  • Auto-generating resource pack
  • Playing animation
  • Syncing with base entity
  • Custom hit box
  • Supports 12-limb player animation

🔥Why do I create BetterModel even though ModelEngine already exists?

The main reason I created it is:

  • To reduce traffic usage—MEG’s traffic optimization is outdated and insufficient for modern servers.
  • To enable faster updates—We can’t afford to wait for MEG’s slow update cycle anymore.
  • To provide a more flexible API—MEG is closed-source with a very limited API, which makes extending or integrating difficult.
  • To restore vanilla behavior-MEG breaks several vanilla entity features and physics, which this project aims to fix.

Also, you can refer my document to compare both ModelEnigne and BetterModel.

🛞General model/animation



This plugin, of course, implements a Generic BlockBench model with animation.

Network optimization

  • Culling by sight-trace
  • Skip sending a packet if a scale is zero
  • Parallel bundling of an animation packet
  • Keyframe optimization

You can see the report of network optimization in here.

Custom hitbox



This plugin provides custom hitbox both client and server. (tracking animation rotation)

MythicMobs support




Like MEG, This plugin supports MythicMobs, you can use some MEG's mechanics in BetterModel too.

💡Player model/animation


This plugin supports player model with using user's custom skin without textures.

🚀Plugin support

Platform

  • Spigot
  • Paper or a fork (e.g., Folia)

⚠️Paper is highly recommended.

Version

  • Java 21
  • Minecraft server 1.20.5-1.21.8

Command

/bettermodel reload — Reloads this plugin.  
/bettermodel spawn <model> — Summons this model to husk.  
/bettermodel disguise <model> — disguises self.  
/bettermodel undisguise [model] — undisguises self  
/bettermodel play <model> <animation> — Plays player animation.
/bettermodel test <model> <animation> [player] [location] — Tests some model's animation to specific player

🔧Build info

Library

  • Kotlin stdlib: modern functional programming
  • semver4j: semver parser
  • CommandAPI: command
  • adventure: component
  • stable player display: player animation
  • expiringmap: concurrent map cache
  • DynamicUV: player model-uv
  • molang-compiler: compiling and evaluating molang expression

Build

./gradlew build

API

We are using maven central.

repositories {
    mavenCentral()
}

dependencies {
    compileOnly("io.github.toxicity188:BetterModel:VERSION")
}

Modrinth is open source.

main@81b0922

© Rinth, Inc.

Company

TermsPrivacyRulesCareers

Resources

SupportBlogDocsStatus

Interact

Discord X (Twitter) Mastodon Crowdin
Get Modrinth App Settings
NOT AN OFFICIAL MINECRAFT SERVICE. NOT APPROVED BY OR ASSOCIATED WITH MOJANG OR MICROSOFT.