Item frames, paintings, armor stands and leash knots are, for simplicity, called objects on this page.

Protect your item frames, paintings, armor stands and leash knots!
Very simple to use.

Overview | Permissions | Internationalization (Language)
How it works (commands and stuff) | Help


Your server is not running 1.7.10 or newer? Info page for older versions of FrameProtect


FrameProtect 2.8.4 is here!

What's new? (since 2.7)

  • add 1.12+ support
  • add end crystal support
  • major performance improvements due to asynchronous saving
  • improve respawn mechanism
    • temporarily generate blocks to make sure item frames, paintings and leash knots get spawned where they normaly would not
    • minimize console output (no more "Unable to respawn disappeared *" spam)
  • add new translations (Japanese, Simplified Chinese, Korean)
  • use bStats ( for plugin metrics
  • use spiget ( for update checks (no more console spam with UnknownHostException)
  • add option to disable error logging (writing log files)
  • add option to get rid of disappeared object respawning related messages (enabled by default)
  • some other fixes



  • Protect item frames, paintings, armor standsleash knots and end crystals
  • Per player protections
  • Respawn disappeared protected objects
  • Save objects from natural destruction (e.g. floating paintings)
  • Save objects from destruction by mobs (e.g. creepers, skeletons)
  • Save protected objects from destruction by piston movement
  • UUID support
  • MySQL support
  • Permissions support
  • Customizable messages
  • Customizable command
  • Customizable prefix
  • Many configuration options



If you want to import old data, please have a look at import old data.

> Make sure that your server is running at least Minecraft 1.7.10 and Java 8.

> Put FrameProtect.jar into your plugins folder and restart the server.


Import old data (from 2.5 / 2.6)

FrameProtect 2.8 has integrated data import functionality.

Click here for detailed data import instructions.


Data migration SQLite <-> MySQL

FrameProtect 2.8 has integrated data migration functionality.

Click here for detailed migration instructions.



You can find all configuration options including description and default value in the config.yml file.


Future Features / Todo

  • Add world specific configuration
  • Add purge command to remove all protections of a specific player.
  • Add debug commands (remove broken protections, etc.)
  • Add the possibility to add members to your protections, so they can be accessed by other players.
  • Readd some commands and add the option to disable direct protecting/deprotecting by clicking.
  • Any requests?


Known Bugs


Update Checking

FrameProtect checks for new versions every now and then using the spiget API (check only, no download). You can disable this by setting settings.allowUpdateCheck in config.yml to false.



FrameProtect sends statistics about the usage to You can disable this for all plugins by setting the option enabled in the YourServerFolder/plugins/bStats/config.yml file to false.
View stats


Posts Quoted:
Clear All Quotes

About This Project

  • Project ID
  • Created
    Nov 4, 2012
  • Last Released File
    Aug 20, 2017
  • Total Downloads
  • License



Recent Files