Your cart is empty
Looks like the spiders padded through here. Pick a plugin and it will show up here. Continue shoppingTurn a Java pack's custom item models into a Bedrock .mcpack plus Geyser mappings, right in your browser.
A Bedrock pack and Geyser mappings
| Bedrock item | Java item | Type | Status |
|---|---|---|---|
| ruby_sword | minecraft:diamond_sword · CMD 1001 | 3D | OK |
| coin | minecraft:paper · CMD 12 | 2D | OK |
| crate_key | minecraft:tripwire_hook · CMD 3 | 3D | Check |
Turns the custom items in a Java resource pack into a Bedrock .mcpack plus Geyser mappings. Works with custom_model_data and 1.21.4+ item models, entirely in your browser.
Bedrock players join Java servers through Geyser. Geyser can't use a Java resource pack directly: Bedrock needs its own pack format, and Geyser needs a mappings file that says which Java item (and which custom_model_data or item model) becomes which Bedrock item. This tool builds both from your Java pack.
| File | Where it goes |
|---|---|
packs/<name>.mcpack |
Geyser's packs folder: plugins/Geyser-Spigot/packs on Paper/Spigot, plugins/Geyser-Velocity/packs on Velocity, config/Geyser-Fabric/packs on Fabric. |
custom_mappings/<name>.json |
The custom_mappings folder next to Geyser's config.yml. |
config.yml |
Make sure enable-custom-content: true is set. |
Restart the server after copying the files; Geyser only reads mappings at startup. If you run Geyser on a proxy (Velocity or BungeeCord), install the files there, not on the backend servers. Floodgate doesn't need any changes: it only handles Bedrock player logins.
| Java | Bedrock |
|---|---|
Override with custom_model_data (1.14 – 1.21.3) |
Geyser legacy mapping on that Java item |
items/*.json range_dispatch on custom model data (1.21.4+) |
Geyser legacy mapping with the same threshold |
items/*.json select on custom model data strings |
Geyser definition with a match predicate |
Custom item_model definitions (assets/<ns>/items) |
Geyser definition on the base item you choose (default minecraft:paper) |
item/generated and item/handheld models |
Item texture in item_texture.json; handheld items are held like tools |
Models with elements
|
Geometry, atlas texture, attachable and animations, plus an inventory icon |
Damage-based models (the old damage predicate) only exist in Geyser's format 1, so they're written to the v1 mappings file. Tint colours (like leather or potion overlays) and animated textures (the first frame is used) can't be carried over exactly.
custom_model_data packs work as they are. To update the Java side to 1.21.4+, use the CustomModelData converter; this converter reads both formats.Custom items: models chosen with custom_model_data overrides (1.14 – 1.21.3), 1.21.4+ item model definitions in assets/*/items, and item_model component definitions used by newer plugins. Flat items become Bedrock item textures; 3D models become Bedrock geometry with attachables, so they show in the hand. It also writes the Geyser custom item mappings.
No. It focuses on custom items, which is what Geyser servers need for plugins like ItemsAdder, Oraxen, Nexo or crates. Vanilla texture replacements, blocks, armor, fonts and GUI textures aren't converted.
No. The conversion runs entirely in your browser. Your pack is read on your own computer and the .mcpack is built there too.
Format version 2, the current one, with legacy custom_model_data entries and 1.21.4+ definition entries. A format version 1 file is also offered for older Geyser builds; it can't express item_model definitions or string custom model data.
The hand position comes from the Java model's display settings. Bedrock's hand bones differ from Java's, so open Options and adjust the third-person or first-person offset, then convert again. The offset applies to every 3D item in the pack.
A texture the model points to isn't in the zip, for example because it comes from another pack or from vanilla. Merge the packs first with the Resource Pack Merger, or add the missing PNG, then convert again. The results table lists every missing texture.
No. Put the .mcpack in Geyser's packs folder and Geyser sends it to Bedrock players when they join.
Your cart is empty
Looks like the spiders padded through here. Pick a plugin and it will show up here. Continue shopping