Welcome to the Hangar Open Beta. Please report any issue you encounter on GitHub!
Avatar for toxicity188

Lightweight BB model engine & entity animation | Custom hit-box | Folia supported

Report BetterModel?

0

Welcome to BetterModel!

⚡Lightweight BlockBench model engine & entity animation

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-tracke
  • Skip sending packet if scale is zero
  • Parallel bundling of 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

⚠️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 limb <true/false> — Shows/Hides player limb.  
/bettermodel play <model> <animation> — Plays player animation.

🔧Build info

Library
Build

./gradlew build

API

We are using maven central.

repositories {
    mavenCentral()
}

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

Information

CategoryDeveloper Tools
Published onDecember 28, 2024
LicenseMIT
Downloads91
Stars3
Watchers2
Supports Folia

Pinned Versions

Members