Mini Logo

CoreProtect 2

CoreProtect - Fast, efficient block logging, rollbacks, and restores

Version: v2.0.9

CoreProtect is a fast, efficient, data logging and anti-griefing tool. Rollback and restore any amount of damage. Designed with large servers in mind, CoreProtect will record and manage data without impacting your server performance.

CoreProtect is the #1 most-used anti-griefing plugin, and has been actively developed since early 2012.

Latest 1.7.2:
Tekkit Classic: (Old, works with CB 1.2.5)

Video Tutorial: (by jfreeze256)

Core Features

  • Fast efficient data logging.
  • Fast rollbacks - no lag while performing rollbacks/restores.
  • Multi-threaded to ensure server performance is never impacted
  • No configuration required. Put the plugin on your server, and you're good to go.
  • SQLite based data storage.
  • Optional MySQL support.
  • Easy to use commands.
  • Perform rollbacks AND restores. Undo any rollback, anytime.
  • Easy to use block inspector
  • Advanced search-based lookup tool.
  • Paginated logs.
  • Automatic update checker.
  • Multi-world support.
  • Enable or disable any aspect of logging in the configuration file.
  • Rollback per-player, or just do a global rollback to all damage around you.
  • Specify certain block types to skip in rollbacks/restores.
  • Restrict rollbacks/restores to specific block types
  • Log basic player actions (such as when a player opens a door)
  • Liquid tracking. Associate liquid flow with players
  • Tree tracking. Trees grown from saplings show who originally planted the sapling.
  • Restrict rollbacks/restores to a radius area.
  • Supports bucket permission system.
  • Able to track blocks that fall off of other blocks. If a player breaks a block that had a sign on it, both the block and the sign can be rolled back.
  • Easily delete old log data.
  • Safe default parameters.
  • Rollback or restore multiple players at once.
  • Create per-world configuration files.
  • Lookup, rollback, or restore by a specific action.
  • Exclude multiple users or blocks.
  • Preview rollbacks or restores.
  • Use WorldEdit selections.
  • An easy to use API.
  • Works with Tekkit servers
  • ...and much more!!

What does it log?

  • Log blocks broken by players.
  • Log blocks placed by players.
  • Log natural block breakage (ex: if a sign pops off a dirt block that was broken)
  • Log bucket usage
  • Log liquid flow
  • Log tree growth
  • Log mushroom growth
  • Log vine growth.
  • Log explosions (TNT, Creepers, Ghasts, etc)
  • Log flint & steel and fire charge usage.
  • Log fire igniting blocks.
  • Log blocks burning up in fires.
  • Log entities changing blocks (Endermen/Enderdragons)
  • Log block movement (Falling sand/gravel)
  • Log leaf decay
  • Log player interactions
  • Log Nether portal generation
  • Log blocks moved by pistons
  • Log crops trampled by players
  • Log snow generated by snow golems
  • Log items taken or placed in chests, furnaces, dispensers, etc.
  • Log paintings and item frames. (With rollback support!)
  • Log entities killed by players (animals/monsters)
  • Log chat messages and commands used by players.
  • Log player sessions (logins/logouts)
  • Log changes done by WorldEdit.
  • ...and the list is still expanding!

How to use the inspector.

Once you have the inspector enabled ("/core inspect", or just "/co i"), you can do the following:

  • Left-click a block to see who placed that block.
  • Right-click a block to see what adjacent block was removed.
  • Right-click (place) a block in a location to see what block was removed at that location.
  • Right-click (place) a block in another block to see who placed it. (ex: place dirt in water to see who placed the water)
  • Right-click on a door,button,lever,chest,etc, to see who last used it.

A Few Reviews

  • "It's easy to use and lightning fast when it comes to rollbacks."
  • "I've been running a MC server since before Bukkit, so I've used just about every block logger out there. CoreProtect is the best and the fastest."
  • "Go with CoreProtect. It's fast, updated frequently, and logs WorldEdit."
  • "Overall it felt more natural, simpler, and much faster to use CoreProtect than Prism, which just doesn't compare."
  • "CoreProtect brings complex logging and rollbacks, whilst at the same time keeping a low profile."

Plugin Metrics

This plugin utilizes Hidendra's plugin metrics system, which anonymously collects and sends the following information to

  • A unique identifier
  • The server's version of Java
  • Whether the server is in offline or online mode
  • The plugin's version
  • The server's version
  • The OS version/name and architecture
  • The core count for the CPU
  • The number of players online
  • The Metrics version

Opting out of this service can be done by editing plugins/Plugin Metrics/config.yml and changing opt-out to true.



Guides & Resources

API Documentation


Join #coreprotect on | EsperNet Web IRC


Minecraft Hosting

Have a question, a suggestion, or just want to tell us thanks? Post below!

Thanks for your support!

You must login to post a comment. Don't have an account? Register to get one!

  • Avatar of LionBlazerui LionBlazerui Apr 17, 2014 at 09:07 UTC - 0 likes

    hi I come form china,so I am not good at English.I will speak chinese.You can use translation tools for what I say.这个插件无法在mcpc1.72上运行。后台会不停报错,游戏内会一直显示繁忙。请求解决,很多mcpc服务器都会用这个插件的。thanks

  • Avatar of wrexsmp wrexsmp Apr 17, 2014 at 02:04 UTC - 0 likes

    @Intellii: Go

    Thanks for the reply,

    It was a very large worldedit and the player left it while he built new builds very close to it, so it would erase his recent builds trying to clean up the accidental worldedit.

    I didn't think about restore 399, that would probably be the closest thing to what I need.

    A rollback 400h and restore 399h would work in theory, but I don't want to chance that.

    Coreprotect is VERY good at what it does, don't get me wrong, but it's not always 100% (98%?) so I don't want to chance it since it was so long ago. This player has lots of builds and lots of worldedits, so I don't want to risk a restore of that much.

    This player uses worldedit alot with other players. And it might lag the server a bit during the execution (small server).

    Possibly in a future update, have an option to be very specific with the time? like e:399h

    Last edited Apr 17, 2014 by wrexsmp
  • Avatar of Intellii Intellii Apr 16, 2014 at 23:40 UTC - 0 likes

    @wrexsmp: Go

    Just use a radius to restrict it to the grief, and use t:400h

    Or you could roll everything back (e.g. /co rollback u:player r:#global t:400h), and then restore the more recent changes (/co restore u:player r:#global t:350h). If they were building with another player, you'll need to include that player in the restore.

  • Avatar of wrexsmp wrexsmp Apr 16, 2014 at 23:21 UTC - 0 likes

    How do you rollback a player during a very specific amount of time?

    I want to rollback a player that did a major worldedit grief 400h ago, so it would be r:#global, but I don't want to rollback his most recent worldedits, say after 399h ago. I want to erase 1 specific hour of a player.

    Is there a /co rollback u:player r:#global t:400h-399h ?

    Last edited Apr 16, 2014 by wrexsmp
  • Avatar of jonghyek jonghyek Apr 15, 2014 at 10:10 UTC - 0 likes

    @Intellii omg you're right. now It's solved thx xD minerealm is awesome server!

  • Avatar of Intellii Intellii Apr 15, 2014 at 04:15 UTC - 0 likes

    @Marium0505: Go

    We'll be adding UUID support, although 2.0.8 will still work even when UUID's are added (players changing their username would just act as a new/different player, rather than properly linking data)

  • Avatar of lukerocks01 lukerocks01 Apr 14, 2014 at 22:47 UTC - 0 likes

    I Suggest To Code In A Option To Use Bedrock as A Logging Item As Other Logging Plugins do. I Love This Plugin Because You Dont Have To Set up MySQL.

  • Avatar of Marium0505 Marium0505 Apr 14, 2014 at 21:43 UTC - 0 likes

    I assume you are working on an update supporting UUID? And, will my current database break? Or will you make a converter/updater?

  • Avatar of Intellii Intellii Apr 13, 2014 at 16:59 UTC - 0 likes

    @jonghyek: Go

    SQLite stores in UTF-8, and MySQL inherits your database settings. If you want your MySQL database to use UTF-8, you need to change the settings yourself.

  • Avatar of jonghyek jonghyek Apr 13, 2014 at 09:36 UTC - 0 likes

    It possible only for english chat log. other language chat log has broken. Intelli please use UTF-8


Date created
Mar 09, 2012
Last update
Feb 23, 2014
Development stage
All Rights Reserved
Curse link
Recent files