dorianpb / cem

Reimplementation of Custom Entity Models in Minecraft for the Fabric Modloader
GNU Lesser General Public License v3.0
123 stars 39 forks source link
fabric minecraft minecraft-mod

Custom Entity Models (but for Fabric)

An implementation of custom entity models heavily based off of Optifine's format that aims to achieve feature parity with Optifine's custom entity models.

Current State of this Mod

This mod is currently in ALPHA, meaning that things MAY or MAY NOT work properly! There is absolutely no guarantee that things will work as intended or at all!

Installation

Check out Modrinth page, the CurseForge page, or build it yourself. This mod requires the installation of the Fabric Loader. If you want to configure this mod, the installation of YACL is also required.

Additionally, this resource pack or a derivative of it is required to work with optifine CEM.

How to use

This mod loads .jem and .jpm files from "assets/dorianpb/cem" folder in resource packs. For resource packs intended to be used with Optifine, renaming " assets/minecraft/optifine/cem" to "assets/dorianpb/cem" should work fine. If you install the optional dependencies, this isn't necessary as there is an option within the config to just load from optifine's folder structure.

Discord Server Link

Join my discord server here: https://discord.gg/3qxFZm7Ycw

For resource pack devs

The file format for the .jem and .jpm is identical to the Optfine's (check out here , here, and here). The folder structures inside "assets/dorianpb/cem" does not matter. If you want to assign a custom model for a creeper, you could put the file as "assets/dorianpb/cem/creeper.jem", "assets/dorianpb/cem/creeper/creeper.jem", " assets/dorianpb/cem/za/waurdo/creeper.jem", etc.

Differences

Licensing

This project is licensed with LGPL v3.0. Please don't repost this project anywhere without my written permission first.

Goals

For mod devs

If your fabric mod creates new entities, you can add support for CEM without too much work! Look at net.dorianpb.external for an example implementation. Make sure to use the " cem" entrypoint.

Credits