
Reflect
A small library about item rendering, and the fantastic things you can do with it.
About this Mod
Reflect
Reflect is a small item rendering library for older and newer versions alike, focusing on compatibility and ease of use of various models for one item.
SimpleModelItem
Implementing SimpleModelItem into your Item class will present you with three needed parameters, the primaryModel, secondaryModel, and getPreset. These primary and secondary models are the two models your item will use, such as test_item_handheld and test_item.
getPreset is the method for using one of the three presets Reflect offers, which are:
Handheld - Seperates the primary model to be used as the in-hand model for the item, and the secondary as the gui and ground model.
WhileUsing - Uses the primary model when the user is not using the item, and the secondary when they are using the item.
WhileSneaking - Same as WhileUsing, but for sneaking.
ComplexModelItem
Implementing ComplexModelItem presents you with only two methods, but much more capabilities. Instead of set presets, ComplexModelItem allows you to set the model of the item in any way you want, with as many models as you want. However, each model MUST be added to the list of strings, getLoadedModels, otherwise they will not be loaded when the game starts.
Analogous Features
Inside of both Simple and Complex Model Items, there is a method named getPlugin, prompting for a ReflectPlugin.
When setting up your project, you must add this in your initializer, and use that ReflectPlugin in all of your Reflect-related features.
public static ReflectPlugin testPlugin = ReflectPlugin.register(MOD_ID);
This ReflectPlugin is registered under your Mod's ID inside of the initializer class preferably.
Other
This mod is heavily inspired by ModelVaryingItem from the AcornLib library by AcoYT, and I heavily recommend you use that library in newer versions.
Available Versions
How to Install Reflect on Your Server
Order Server
Order a Minecraft Java server with at least 3 GB RAM (4 GB recommended).
Set fabric Loader
In the panel under "Egg", select the fabric loader and matching Minecraft version (1.20.6).
Install Mod
Open the mod browser in the dashboard and search for "Reflect". Click "Install" – done! Alternatively, upload the .jar via SFTP to the /mods folder.
Compatibility
Mod Loaders
Minecraft Versions
1.20.6, 1.20.5, 1.20.4 (+6 more)
Server-side
✓ RequiredRecommended RAM
4 GB(min. 3 GB)Frequently Asked Questions
Reflect server crashes on startup – what to do?
Most common cause: wrong fabric version or insufficient RAM. Check the server log (latest.log) for "OutOfMemoryError" or "Mixin" errors. With Mado Hosting: ensure at least 3 GB RAM is allocated and the loader matches the mod version (1.20.6). You can switch loaders with one click in the panel.
Is Reflect compatible with fabric?
Reflect officially supports fabric for Minecraft 1.20.6, 1.20.5, 1.20.4. The Mado dashboard automatically detects incompatible loader combinations.
Server lagging with Reflect – how to optimize performance?
Recommended RAM: 4 GB (per 8 players). Use /spark profiler to check if Reflect consumes the most tick time. Common fixes: reduce server view-distance to 8-10, install "performant" or "starlight" as supplementary mods on Forge. With Mado Hosting, your server runs on NVMe SSDs with dedicated CPU cores for minimal latency.
Similar Mods
Rent Modded Server
Install Reflect with just one click on your server.