CONVERSIONS FOR GEYSER/FLOODGATE! Almost 100% working, works great with FreeMinecraftModels!
Note: There's a lot of text here, but basically you can now use ResourcePackManager to automatically convert resource packs to Bedrock-compatible formats for Geyser/Floodgate, which ResourcePackManager will automatically set it up for you such that they auto host correctly.
This was developed for my other plugins, EliteMobs and FreeMinecraftModels, and is fully working for custom items and the system we use to display custom bosses, although there's still a couple of relatively minor visual issues with it that we are still ironing out.
ResourcePackManager 1.8.0:
[New] Java→Bedrock conversion now works for ANY plugin's resource pack, not just FreeMinecraftModels — Bedrock players (via Geyser) automatically see 3D item models, custom armor, and modeled equipment from any plugin shipping a 1.21.4+ items-definition pack
[New] Pure-Java 3D item icon renderer — custom items render correctly in the Bedrock inventory regardless of model rotation (previously non-axis-aligned models showed as flat UV atlas garbage)
[New] Per-Bedrock-session pack serving via Geyser's API — texture and model tweaks to existing custom items now take effect on the next joining Bedrock player without a server restart (previously needed a restart for ANY change because Geyser scanned packs/ once at boot)
[New] bedrock_display_offsets.yml — twelve user-tunable knobs to fine-tune first/third-person display offsets when a model doesn't sit quite right in Bedrock hands
[New] Custom armor textures now render on Bedrock players (uses vanilla armor geometry with the Java texture layer)
[Fix] Third-person hand display now respects the Java X rotation that was previously being dropped — fixes guns, bows, and angled tools rendering at the wrong pitch on Bedrock
[Fix] Vanilla item models (shield.json, crossbow.json, etc.) are no longer recursively merged across packs — fixes shield offset drift and crossbow rendering as missing-texture
[Fix] Items-definition merging (assets/<namespace>/items/*.json, 1.21.4+) is now format-aware — fixes corrupted transformation arrays, tint RGB triplets, and composite model render order
[Fix] Overlay atlas files (e.g. ItemsAdder's overlay_modern/legacy_atlas) now properly inherit sources from the base atlas instead of losing them when the overlay activates
[Fix] pack.mcmeta supported_formats / min_format / max_format are now properly widened across all formats (int, 2-int array, and object form)
[Fix] Resource pack mixing pipeline now bails out fast on plugin shutdown instead of dragging async tasks past onDisable
[Fix] AutoHost in-flight uploads are now force-closed on plugin disable
[Fix] Multiple Bedrock conversion fixes: per-(model × bone) atlas paths, flipbook texture icons (was passing 64×768 strips to Bedrock), attachable geometry format bumped 1.16.0 → 1.21.0, deterministic pack manifest UUIDs (Bedrock cache now invalidates correctly), bedrockConversionEnabled defaults to true
[Tweak] MagmaCore dep bumped to 2.2.0-SNAPSHOT for shutdownRequested and the new location/protection APIs