FreeMinecraftModels Commands
Use /freeminecraftmodels or /fmm.
Setup and Content Management
| Command | Purpose |
|---|---|
/fmm | Opens the craftable items menu for players (see Craftable Items Menu below) |
/fmm admin | Opens the admin content browser — browse installed packs, folders, models, and custom items (permission: freeminecraftmodels.admin) |
/fmm initialize | Opens the player-only first-time setup flow |
/fmm setup | Opens the player-only content-management menu |
/fmm downloadall | Downloads all currently accessible official content |
/fmm updatecontent | Downloads updates for outdated official content |
/fmm reload | Re-imports content and regenerates the pack output |
/fmm version | Shows the plugin version (no permission required -- anyone can run this) |
/fmm stats | Shows loaded-model statistics |
Model Spawning and Placement
| Command | Purpose |
|---|---|
/fmm spawn static <id> | Spawns a static model |
/fmm spawn dynamic <id> | Spawns a dynamic model |
/fmm spawn prop <id> | Creates a persistent prop entry and spawns it |
/fmm itemify <id> <material> | Creates a placeable item that spawns the chosen model as a prop |
/fmm mount <id> | Spawns an experimental rideable mount using a disguised horse |
/fmm giveitem <item> | Gives a custom FMM item to the player (permission: freeminecraftmodels.admin) |
/fmm craftify <id> | Opens an interactive recipe builder — place ingredients in a 3×3 grid then click the output to save a crafting recipe for that prop |
Player Disguises
| Command | Purpose |
|---|---|
/fmm disguise <modelID> [player] | Disguises a player as a loaded model. Without a target argument, disguises the sender. With a target, requires freeminecraftmodels.disguise.others and works from console |
/fmm undisguise [player] | Removes the disguise. Without a target, undisguises the sender. With a target, requires freeminecraftmodels.disguise.others and works from console |
/fmm disguiselist | Lists currently disguised players and the model each is disguised as (permission: freeminecraftmodels.disguise.others) |
Disguise behavior:
- Disguising replaces any previous disguise on that player cleanly.
- Disguised players are made invisible to other players so only the model is seen. The invisibility persists through milk buckets and other effect-clear interactions.
- Third-party plugins can drive disguises via the public
DisguiseAPI(see API & Developer Guide).
Furniture Shop
| Command | Purpose |
|---|---|
/fmm shop | Opens the optional Vault-backed furniture shop where players can purchase craftable props with in-game currency (permission: freeminecraftmodels.shop, default: true) |
The shop is disabled by default and only registers itself when:
enabled: trueinshop_config.yml- Vault is installed
- A Vault-compatible economy provider is registered
When any of these are missing, /fmm shop is unregistered (or shows the configurable "shop disabled" message if force-disabled at runtime). See Configuration for the shop config keys and per-recipe shopEnabled / shopPrice fields.
Utilities
| Command | Purpose |
|---|---|
/fmm hitbox visualize [duration] | Visualizes hitboxes for debugging |
/fmm location | Diagnostic command — reports how many dungeon detectors and protection providers are registered with LocationAPI, and tests both predicates against your current location (permission: freeminecraftmodels.*) |
/fmm debug bedrock [on|off] | Runtime toggle for the [FMM-BedrockDebug] log stream that diagnoses the Bedrock display pipeline. Omit the state argument to report whether logging is currently on. Always resets to OFF on plugin reload — intentionally not a config key so it cannot be left on by accident. Accepts both players and console (permission: freeminecraftmodels.*) |
/fmm deleteall | Removes all currently loaded modeled entities |
Prop Placement Behavior
When a player right-clicks with a paper prop item (created via /fmm itemify or crafted via a /fmm craftify recipe), the following applies:
- Item consumption: The paper item is consumed when the prop is placed, unless the player is in Creative mode.
- Rotation: Props are placed facing the player's direction, snapped to 10-degree rotation increments. This gives players fine-grained control over prop orientation simply by adjusting where they are looking before placing.
Craftable Items Menu
Running /fmm with no arguments opens an inventory menu for players showing all craftable items that have been configured with recipes.
- Each item in the menu represents a craftable FMM item.
- Clicking an item opens a detail submenu that displays the spatial 3x3 crafting grid, an arrow, and the output item — showing the player exactly how to craft it in a crafting table.
- Requires the
freeminecraftmodels.menupermission (default:true, available to all players).
Admin Content Browser
Running /fmm admin opens an inventory menu for server administrators to browse:
- Installed content packs
- Folders and individual models
- Custom items (models with
material:set)
Requires the freeminecraftmodels.admin permission (default: op).
Recipe Builder
The /fmm craftify command lets you create a vanilla crafting-table recipe for any prop model.
- Run
/fmm craftify <model_id>to open the recipe builder UI. - A custom inventory opens with a 3×3 crafting grid and a pre-filled output item.
- Place ingredients from your inventory into the grid in whatever pattern you want.
- Click the output item (the prop's paper item) to save the recipe.
- Particles and a sound confirm the save.
- The recipe is saved to
plugins/FreeMinecraftModels/recipes/<model_id>.ymland registered immediately. - Players can now craft the prop item in any crafting table.
- Press Escape to cancel without saving — ingredients are returned to your inventory.
- Running craftify again for the same model overwrites the previous recipe.
- Recipes persist across server restarts and reloads.
Saved recipe files include shopEnabled (default true) and shopPrice (default from shop_config.yml) fields that control how the recipe is exposed to /fmm shop.
Permissions
Registered in plugin.yml
| Permission | Default | Description |
|---|---|---|
freeminecraftmodels.* | OP | Wildcard that grants freeminecraftmodels.admin, freeminecraftmodels.disguise.self, and freeminecraftmodels.disguise.others. The wildcard string is also the literal permission required by /fmm reload, /fmm stats, /fmm spawn, /fmm itemify, /fmm craftify, /fmm mount, /fmm hitbox visualize, /fmm debug bedrock, /fmm location, /fmm setup, /fmm initialize, /fmm downloadall, and /fmm updatecontent |
freeminecraftmodels.admin | OP | Access to /fmm admin (the admin content browser) and /fmm giveitem |
freeminecraftmodels.disguise.self | OP | Allows /fmm disguise and /fmm undisguise targeting only the sender |
freeminecraftmodels.disguise.others | OP | Allows /fmm disguise <model> <player>, /fmm undisguise <player>, and /fmm disguiselist |
freeminecraftmodels.menu | true | Access to /fmm craftable items menu (available to all players) |
freeminecraftmodels.shop | true | Access to /fmm shop (available to all players when the shop is enabled) |
Enforced by commands
| Permission | Default | Description |
|---|---|---|
freeminecraftmodels.deleteall | OP | Access to /fmm deleteall (checked at runtime, not registered in plugin.yml) |
initialize,setup,spawn,itemify,mount,giveitem,craftify,hitbox visualize,location, andshopare player-only commands.disguiseandundisguiseaccept a target player and may be run from console as long as a target is supplied.versionhas no permission restriction and can be run by anyone (players or console).