Skip to content

Resource Pack & Models

The resource pack lives in a separate repository:

github.com/lupusmalus/terminacraft-resources

It is served to players automatically on join via ResourcePackDownloader, which pulls from GitHub Releases.

How models get into the game

BlockBench (.bbmodel)
    └── committed to terminacraft-server repo
         └── ModelEngine reads blueprints/ at startup
              └── BetterModel generates resource pack assets
                   └── packed into the resource pack sent to players

The .bbmodel files are the source of truth. They live at:

server/plugins/ModelEngine/blueprints/

180+ models are defined there — Link variants, NPCs (Skull Kid, Happy Mask Salesman, Tingle, etc.), masks, enemies, misc creatures.

Adding a new model

  1. Create the model in BlockBench, using the ModelEngine rig format.
  2. Save the .bbmodel file to server/plugins/ModelEngine/blueprints/.
  3. In-game: /meg reload — ModelEngine picks up the new blueprint.
  4. BetterModel regenerates the resource pack assets automatically on reload.
  5. Push the pack to a new GitHub Release in terminacraft-resources so players receive the updated pack on next join.
  6. Commit the .bbmodel file to the server repo.

Spawning a model in-game

Models are referenced by their blueprint ID (filename without .bbmodel). You can test a model with:

/meg spawn <model_id>

In Denizen scripts, models are attached to entities:

yaml
- spawn <entity_type> <location> save:entity
- adjust <entry[entity].spawned_entity> model:<model_id>

In MythicMobs, use the model option in the mob definition:

yaml
MyMob:
  Type: ZOMBIE
  Options:
    Model: my_model_id

BetterModel specifics

BetterModel (plugins/BetterModel/) is a fork maintained by LupusMalus. It handles:

  • Resource pack generation from ModelEngine blueprints
  • Armor stand / display entity rendering
  • Skin overrides (plugins/BetterModel/skins/)

The generated resource pack zip lives at plugins/ModelEngine/resource pack.zip. Do not edit it directly — it is regenerated on every /meg reload.

Armors

Custom armor models live in plugins/BetterModel/armors/. These are separate from entity models and are referenced in Denizen item scripts.

TerminaCraft — a Majora's Mask recreation in Minecraft