[EMF] Entity Model Features [Fabric & Forge]

[EMF] Entity Model Features [Fabric & Forge]

45M Downloads

[Idea] Add support for ismah

RazorPlay01 opened this issue ยท 4 comments

commented

Several users are asking me to add emf support to my ismah mod, which is responsible for rendering armor on the player's arm when in first person. However, since armor registration and rendering is always subject to change, and each developer implements their armor as they see fit, this compatibility must be implemented on their end. I tried to do it myself, but I found the code with gg.essential to be completely crazy. I couldn't understand how it works, so I gave up and left it to someone who knows how to work with their project better. I'm attaching the URL of my mod's wiki, as well as the implementation I did to make another mod compatible. If you have any questions about my API, you can ask them here. I'll keep an eye out.

ISMAH Wiki
armoroftheages compat implemetation

commented

Seconded! I feel ISMAH could really benefit from compat support with EMF.

commented

why does this need code in emf?

the gg.essential stuff is related to using the essential gradle toolkit for multiversion management, this codebase has all the code for fabric forge and neoforge and 1.20.1 all the way to 1.21.8 in one branch

commented

As I mentioned, armor registration and rendering is not something that is defined the same regardless of the mod, such as item registration, therefore each developer implements it as they like and can make any changes they want to the system as they please. It would literally be impossible for me to ensure compatibility with all mods because I would have to review them one by one to see how they implement their armor. Ismah currently correctly renders all vanilla armor or armor from mods that use vanilla rendering. And yes, I know that gg.esentiqls is to be able to launch the multiversions and multiloaders mod. I do the same with stonnecutter but I haven't found any wiki and it has seemed quite complicated to understand how it works when I see it.

commented

I still don't understand why the need for support in emf?, assuming you have a handler for the vanilla armor renderer shouldn't it just work with emf modelled armor? seeing as emf just swaps the model out? or am i missing something?

as for the EGT stuff i'm guessing you are running into the issue where the emf repository won't load without a built ETF repository (or atleast all the jar files) next to it? the build gradle has some comments about that but if you want to avoid doing that you'll need to manually implement each etf version, or atleast a placeholder that can build right e.g. jsut grabbing a random etf jar and trying it for all versions