FreeMinecraftModels Commands
registerCraftingRecipes in config.yml defaults to true. Set it to false and restart for a purchase-only economy: recipes remain visible in the menus and shop, but Bukkit crafting recipes are removed. The crafting instructions on this page require this setting to remain true.
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 setup | Opens the player-only content-management / first-time setup menu (the command players are pointed at on first boot) |
/fmm recommendedplugins | Shows companion plugins that pair well with FreeMinecraftModels (opens a catalog menu for players, prints a list for console) |
/fmm downloadall | Downloads the latest plugin update and all available official content. If content changed, FMM reloads to apply it; the downloaded plugin jar still requires a server restart. If the plugin-update step fails for lack of a Nightbreak token or on an auth failure, the content step is skipped entirely |
/fmm downloadallcontent | Downloads all available official content (content only, no plugin jar update) and reloads if at least one package changed |
/fmm updatecontent | Downloads updates for outdated official content and reloads if at least one package changed (alias: /fmm updateallcontent) |
/fmm downloadpluginupdate | Downloads the latest plugin jar update only (applied after the next server restart) |
/fmm forcereinstallcontent <package|all> | Repair command — re-downloads content you already have, even when the version numbers say it is up to date. Tab-completes all plus every Nightbreak package slug. all covers every package detected as downloaded; if a pack's files are completely missing, name its slug directly instead. Reloads afterwards (permission: freeminecraftmodels.*) |
/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 |
Shared Nightbreak Commands
These are registered by MagmaCore rather than by FreeMinecraftModels itself, so they are top-level commands, not /fmm subcommands.
| Command | Purpose |
|---|---|
/nightbreaklogin <token> | Stores the shared Nightbreak account token for this server, unlocking official content downloads and plugin updates (permission: nightbreak.login, default: op). Registered once per server — whichever Nightbreak plugin loads first owns it |
/nightbreaklogout | Clears the stored Nightbreak account token from this server (permission: nightbreak.login, default: op). Accepts both players and console |
/freeminecraftmodelschangelog [dismiss|disable] | Shows unread FreeMinecraftModels release notes (plugin releases and tracked content packages). dismiss marks the currently shown notes as read; disable permanently hides changelog reminders for you. Player-only and admin-only — a player needs freeminecraftmodels.*, one of the setup/admin permissions, or OP. If another plugin already owns the /freeminecraftmodelschangelog label, the command registers under a namespaced fallback such as /freeminecraftmodels:freeminecraftmodelschangelog |
Admins who have unread release notes are nudged in chat on join with a clickable [VIEW CHANGELOG] prompt; the digest view offers Dismiss These Updates and Never Show Changelogs buttons that do the same thing as the two subcommands. Per-player read state lives in plugins/FreeMinecraftModels/nightbreak-changelogs.yml.
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. Refuses with A prop of that model already exists on this block. if a prop of the same model is already loaded on that block |
/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.self + 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.self + 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|props> [on|off] | Runtime toggles for FMM's diagnostic log streams. bedrock flips the [FMM-BedrockDebug] stream that diagnoses the Bedrock display pipeline; props flips the stacked-props scan, which makes every chunk load report any two props within 0.1 blocks of each other as STACKED PROPS DETECTED. Omit the state argument to report the current state without changing it. on/true/enable/enabled and off/false/disable/disabled are all accepted. Both toggles always reset to OFF on plugin reload — intentionally not config keys so they cannot be left on by accident. Accepts both players and console (permission: freeminecraftmodels.*) |
/fmm packetdebug [ticks] | One-shot packet-load diagnostic. Samples the modeled-entity packet traffic for the next [ticks] model-clock ticks (default 1, capped at 200) and reports logical packets/tick, packets actually delivered/tick including per-viewer fan-out, the worst single player/tick, a packet-type breakdown, and the heaviest viewers. Tab-completes 1, 5, 20, 60. Run it while standing in the laggy area. Packet counts are exact; byte figures are estimates. Times out with a warning if no sample lands (no modeled entities loaded, or NMS disabled). Accepts both players and console (permission: freeminecraftmodels.*) |
/fmm deleteall [radius] | Removes all loaded modeled entities and persistent props. Without an argument it clears everything; an optional [radius] (player-only) limits removal to entities within that many blocks of the player |
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.
- One prop per model per block: Placement is refused with
A prop of that model already exists on this block.when a prop of the same model is already loaded on that block. The item is not consumed on a refused placement. - Main hand only: Only the main-hand half of the interaction event places a prop, so a single right-click can no longer produce two props.
- Duplicate cleanup: On server start and on every chunk load, FreeMinecraftModels scans for prop armor stands that share a model and a block, keeps one, and removes the rest. Removals are logged as
[FMM Props] Removed N duplicate prop armor stand(s) ....
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.
Recipe File Format
isEnabled: true
model_id: "wooden_chair"
shape:
- "L L"
- "LLL"
- "L L"
ingredients:
L: OAK_LOG
shopEnabled: true
shopPrice: 250.0
| Field | Required | Notes |
|---|---|---|
isEnabled | yes (default true) | Set to false to unregister the recipe without deleting the file |
model_id | yes | The model the crafted paper item places. A model ID carrying a bow/crossbow state suffix is automatically rewritten to the base model ID |
shape | yes | Up to three rows of up to three characters. A space means "empty slot" |
ingredients | yes | Map of a single shape character to a Bukkit material name. Unrecognized materials are dropped silently |
shopEnabled | no (default true) | Whether the recipe is listed in /fmm shop |
shopPrice | no (default defaultPrice from shop_config.yml) | Vault currency cost in the shop |
The registered Bukkit recipe key is freeminecraftmodels:prop_recipe_<model_id>, and the output is always the model's paper placement item. Re-running /fmm craftify for the same model overwrites the file and re-registers under the same key.
Permissions
Registered in plugin.yml
| Permission | Default | Description |
|---|---|---|
freeminecraftmodels.* | OP | Wildcard that grants freeminecraftmodels.admin, freeminecraftmodels.deleteall, freeminecraftmodels.disguise.self, freeminecraftmodels.disguise.others, and freeminecraftmodels.bypassregionprotection. 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, /fmm packetdebug, /fmm location, /fmm setup, /fmm initialize, /fmm recommendedplugins, /fmm downloadall, /fmm downloadallcontent, /fmm updatecontent, /fmm downloadpluginupdate, and /fmm forcereinstallcontent |
freeminecraftmodels.admin | OP | Access to /fmm admin (the admin content browser) and /fmm giveitem |
freeminecraftmodels.deleteall | OP | Child of the wildcard; access to /fmm deleteall |
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.bypassregionprotection | OP | Allows placing and interacting with props anywhere another plugin would block normal block placement, even when preventPropPlacementInProtectedRegions is enabled |
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) |
Targeted disguise and undisguise commands require both freeminecraftmodels.disguise.self and freeminecraftmodels.disguise.others. disguiselist requires only .others.
Registered by MagmaCore
| Permission | Default | Description |
|---|---|---|
nightbreak.login | OP | Required by the shared /nightbreaklogin and /nightbreaklogout commands. Registered once per server by whichever Nightbreak plugin loads first |
Sender notes
initialize,setup,spawn,itemify,mount,giveitem,craftify,hitbox visualize,location,admin, andshopare player-only commands./freeminecraftmodelschangelogis player-only too.recommendedplugins,downloadall,downloadallcontent,updatecontent,downloadpluginupdate,forcereinstallcontent,packetdebug,debug,deleteall,/nightbreaklogin, and/nightbreaklogoutaccept both players and console (adeleteallradius is player-only).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)./fmm initializeopens the first-time setup menu for players withfreeminecraftmodels.*. Use/fmm setupfor day-to-day content management.