CoreProtect icon

CoreProtect -----

Fast, efficient block logging, rollbacks, and restores




If you enjoy using CoreProtect, please consider supporting the project on Patreon and joining us on Discord.
Patrons receive early access to development builds, as well as other exclusive benefits.


Download: CoreProtect v22.4

Changelog
  • Added thread-safe logPlacement and logRemoval API methods.
  • Fixed FAWE changes not being logged when using newer builds (@Telesphoreo).
  • Fixed unnecessary database transactions when consumer is empty.
  • Fixed obfuscation formatting in item names making tooltips unreadable.
  • Fixed occasional NullPointerException while processing hopper transactions.
  • Fixed NoSuchMethodError when shooting or dropping arrows in MC 1.20/1.20.1.
  • Fixed MysqlDataTruncation error when logging custom skull data.
----------, May 14, 2024

If you enjoy using CoreProtect, please consider supporting the project on Patreon and joining us on Discord.
Patrons receive early access to development builds, as well as other exclusive benefits.


Download: CoreProtect v22.3

Changelog
  • Improved hopper logging to prevent infinite attempts on failed pushes.
  • Fixed hopper pulls performing container validation on wrong block.
  • Fixed hopper transactions not always being logged.
  • Fixed teleports not working on some systems.
  • Fixed teleport shortcut not properly handling extremely large numbers.
  • Fixed zombies killed by wither roses not always being logged.
  • Fixed entity deaths not always being logged in MC 1.19 and earlier.
  • Fixed placing items in item frames logging incorrect item amounts.
  • Fixed region halts on player quits when using Folia (@NahuLD).
  • Fixed block spread cache not always being properly utilized.
  • Fixed legacy short grass data rolling back as air in MC 1.20.3+.
  • Fixed lookups on legacy data not matching against legacy materials.
  • Fixed ConcurrentModificationException with queueLookup API method.
  • Fixed NoSuchMethodError when shooting or dropping arrows in MC 1.20.5+.
  • Fixed NullPointerException when rolling back player heads.
----------, May 8, 2024

If you enjoy using CoreProtect, please consider supporting the project on Patreon and joining us on Discord.
Patrons receive early access to development builds, as well as other exclusive benefits.


Download: CoreProtect v22.2

Changelog
  • Fixed entity data not being logged when using SQLite on MC 1.20.2+.
  • Fixed item names containing vertical bars displaying incorrectly.
  • Fixed rollbacks not checking world when teleporting players.
  • Fixed internal block cache not being cleared for inactive players.
----------, Sep 25, 2023

If you enjoy using CoreProtect, please consider supporting the project on Patreon and joining us on Discord.
Patrons receive early access to development builds, as well as other exclusive benefits.


Download: CoreProtect v22.1

Changelog
  • Added support for displaying lore in item tooltips.
  • Added hidden "enable-ssl" database option (default: false).
  • Fixed dropper transactions not being logged when using Paper.
  • Fixed tree growth still being logged when disabled in config file.
  • Fixed hasPlaced and hasRemoved API methods always returning false. (@takejohn)
  • Fixed CoreProtectPreLogEvent not implementing Cancellable. (@takejohn)
  • Fixed IndexOutOfBoundsException when modifying signs on Paper 1.17-1.19
----------, Aug 29, 2023

If you enjoy using CoreProtect, please consider supporting the project on Patreon and joining us on Discord.
Patrons receive early access to development builds, as well as other exclusive benefits.


Download: CoreProtect v22.0

Changelog
  • Added support for Folia.
  • Added tooltips to lookups that display item names and enchantments.
  • Added extended support for Minecraft 1.20 blocks/items/entities.
  • Added logging and rollback support for all double sided signs.
  • Added inventory transaction logging for chiseled bookshelves.
  • Added inventory transaction logging for placing items on a campfire.
  • Added logging for brushing and destruction of suspicious sand/gravel.
  • Added logging and rollback support for jukebox transactions.
  • Added logging and rollback support for dragon egg teleportation.
  • Added player interaction logging for chiseled bookshelves.
  • Added player interaction logging for jukeboxes.
  • Added legacy component serialization support for signs in Paper 1.17+.
  • Added logging for clipboard pastes when using FAWE. (@Boothin)
  • Added hidden "unknown-logging" logging option. (@Radiant)
  • Added hidden "maximum-pool-size" database option. (@C0Nd3Mnd)
  • Improved performance of ItemStack merging. (@asdanjer)
  • Improved performance of structure growth processing. (@s-yh-china)
  • Improved detection of new wood types for future Minecraft updates.
  • Improved CoreProtectPreLogEvent to now be cancellable.
  • Improved MySQL database connection handling.
  • Changed minimum required version to Minecraft 1.15.
  • Updated HikariCP dependency from 4.0.3 to 5.0.1.
  • Fixed performLookup in API not returning valid block data.
  • Fixed sign lookups displaying incorrectly when containing hex colors.
  • Fixed incorrect amounts when dispensing items in Paper 1.19.3+.
  • Fixed networking API connections being reset when reloading config.
  • Fixed logging and lookup issues after performing "/co reload".
  • Fixed mushroom growth logging invalid data when using bonemeal.
  • Fixed tree/mushroom growth not respecting config file when using bonemeal.
  • Fixed NullPointerException while processing transactions for dyed armor.
  • Fixed NullPointerException while logging container transactions.
  • Fixed NullPointerException while breaking/placing a spawner.
  • Fixed NullPointerException while performing rollbacks.
  • Fixed InventoryClickEvent exception when using Magma.
  • Fixed ConcurrentModificationException in ProjectileLaunchEvent.
----------, Aug 1, 2023

If you enjoy using CoreProtect, please consider supporting the project on Patreon and joining us on Discord.
Patrons receive early access to development builds, as well as other exclusive benefits.


Download: CoreProtect v21.3

Changelog
  • Added logging for player inventory transactions with allays.
  • Added logging for sculk catalyst block spread. (@Gungadean)
  • Added logging for frog, tadpole and goat metadata.
  • Added extended support for mangrove blocks.
  • Added networking API for third-party clients. (@vacla)
  • Improved database index handling for faster lookups.
  • Improved HikariCP database connection handling.
  • Improved Spanish and Chinese translations. (@KrazyxWolf, @DreamVoid)
  • Fixed tab completion not fully respecting player permissions.
  • Fixed queueLookup API method returning data in wrong order.
  • Fixed NullPointerException when killing NPCs.
  • Fixed NullPointerException on disable if plugin failed to load.
  • Fixed NullPointerException when processing hopper transactions.
  • Fixed NumberFormatException when using certain WorldEdit builds.
  • Fixed IllegalStateException when modifying containers using FAWE.
  • Fixed IllegalArgumentException when processing corrupt data.
  • Fixed NoSuchMethodError when stopping server using Paper 1.14.
----------, Dec 10, 2022

If you enjoy using CoreProtect, please consider supporting the project on Patreon and joining us on Discord.
Patrons receive early access to development builds, as well as other exclusive benefits.


Download: CoreProtect v21.2

Changelog
  • Added hidden "disable-wal" database option (default: false).
  • Changed inventory lookups to always require a username.
  • Fixed rollbacks/restores not correctly updating all blocks.
  • Fixed inventory rollbacks not modifying player equipment slots.
  • Fixed SQLite WAL checkpointing not running on some systems.
  • Fixed deprecated display width warnings for MySQL databases.
  • Fixed NullPointerException when logging player projectile data.
----------, Mar 21, 2022

Download: CoreProtect v21.1

Changelog
  • Fixed "user not found" error when performing inventory lookups/rollbacks.
  • Fixed exploited end crystals logging phantom fire data.
  • Fixed NullPointerException when trading with wandering traders.
----------, Mar 11, 2022

Download: CoreProtect v21.0

Changelog
  • Added inventory rollback support for online players.
  • Added support for time ranges in the time parameter.
  • Added logging for players crafting and breaking items.
  • Added logging for players throwing/shooting items.
  • Added logging for players picking up arrows and tridents.
  • Added logging for items traded with villagers (MC 1.18+).
  • Added interaction logging for item frames & crafting tables.
  • Added container transaction support for item frames.
  • Added clickable page numbers to lookup pagination.
  • Added tooltips for clickable commands in lookup results.
  • Added entity counts to #preview confirmation page.
  • Added "logins", "logouts", "blocks", and "signs" as new action aliases.
  • Added a:+container and a:-container to tab-completion.
  • Added "/co page" alias command for page lookups.
  • Added "/co consumer <pause|resume>" console command.
  • Added hidden "log-cancelled-chat" chat option (default: true).
  • Added hidden "enable-awe" logging option (default: false).
  • Added hidden "exclude-tnt" rollback option (default: false).
  • Added sessionLookup and queueLookup methods to API.
  • Changed a:inventory to display player inventory transactions.
  • Changed a:item to no longer include container transactions.
  • Changed entities killed via "/kill" command to log under #command.
  • Changed doors and beds to no longer log data as two separate blocks.
  • Changed minimum required Java version to Java 11.
  • Improved performance of rollbacks and lookups.
  • Improved lookup interface and added action colours.
  • Improved logging to skip unnecessary data from newly generated chunks.
  • Improved WorldEdit logging and added compatibility with FAWE.
  • Improved database index handling when targeting a specific location.
  • Improved permission handling for "inventory" and "item" actions.
  • Fixed player disconnections not being logged on server shutdown.
  • Fixed item frames and paintings not logging directional data.
  • Fixed "coreprotect.inspect" permission not being checked at the time of inspection.
  • Fixed "/co undo" not functioning when targeting a container.
  • Fixed coordinates in lookups not always being properly aligned.
  • Fixed phantom fire blocks being logged adjacent to lava.
  • Fixed blocks placing when using shift+click to inspect trapdoors.
  • Fixed all firework metadata not being correctly logged.
  • Fixed missing safety checks when inspecting hanging blocks.
  • Fixed rare instances of lookups displaying negative time values.
  • Fixed rare instances of SQLite database driver not being found.
  • Fixed ClassCastException when targeting an armor stand with #container.
  • Fixed IllegalArgumentException when performing a rollback preview containing an end crystal.
----------, Mar 8, 2022

Download: CoreProtect v20.4

Changelog
  • Fixed the top block of bamboo growth not being logged.
  • Fixed radius selections not supporting negative heights.
  • Fixed SQLException when MySQL driver isn't automatically detected.
  • Fixed MySQL connections not being released when performing a reload.
  • Fixed SQLite purges not successfully completing on some systems.
  • Fixed MySQL purges not being gracefully interrupted on shutdown.
----------, Jan 5, 2022

Download: CoreProtect v20.3

Changelog
  • Fixed NoClassDefFoundError when using Paper 1.16.
  • Fixed PoolInitializationException when initializing HikariCP.
----------, Dec 18, 2021

Download: CoreProtect v20.2

Changelog
  • Added CoreProtectPreLogEvent to API. (@bermudalocket)
  • Improved MySQL connection handling by utilizing HikariCP. (@AgentOak)
  • Improved hopper logging performance when using Paper.
  • Improved chat logging in Paper by utilizing new AsyncChatEvent.
  • Improved consumer thread handling during shutdown.
  • Fixed piston heads not being logged when the piston base is broken.
  • Fixed moving pistons logged during explosions not rolling back correctly.
  • Fixed NullPointerException when logging player death item drops.
  • Fixed InventoryMoveItemEvent still processing if both hopper & item transactions are disabled.
  • Fixed ClassCastException when logging chat and command messages.
  • Fixed string padding function utilizing a deprecated library.
----------, Dec 16, 2021

Download: CoreProtect v20.1

Changelog
  • Changed name of "coreprotect.lookup.item" permission to "coreprotect.lookup.inventory".
  • Fixed blocks broken by portal events not being logged.
  • Fixed entities not being excluded when using the "exclude" parameter.
  • Fixed excessive resource usage when logging hopper transactions.
  • Fixed hopper transaction logging not always logging all items.
  • Fixed double chests not rolling back correctly when each half is in a separate chunk.
  • Fixed NullPointerException and AssertionError when logging container transactions.
----------, Jul 27, 2021

Download: CoreProtect v20.0

Changelog
  • Added multi-language support with online translation (enable in config.yml).
  • Added a language.yml file with support for custom phrases.
  • Added back hover events (disable with "hover-events: false").
  • Added adjacent block scanning support for new 1.17 blocks.
  • Added logging for blocks placed/changed via bonemeal.
  • Added logging for ender chest transactions (a:inventory).
  • Added logging for items dropped when a player dies.
  • Added logging for adjacent removals when a block is destroyed by fire or pistons.
  • Added logging for growth and breakage of dripleaf plants.
  • Added logging for amethyst bud/cluster growth.
  • Added logging for powdered snow placed by dispensers.
  • Added support for glowing signs and item frames.
  • Added support for all entity types to mob spawner logging.
  • Added backwards compatibility with old grass path data.
  • Added all items to tab autocomplete for include/exclude parameters.
  • Added action display in lookup results when an action parameter isn't specified.
  • Added "users", "item", and "items" as new aliases for lookup/rollback parameters.
  • Added hidden "hopper-filter-meta" option to only log hopper transactions containing metadata.
  • Added millisecond data when displaying the amount of time taken for a rollback.
  • Added safety check requiring inventory transaction threads to initiate processing in the correct order.
  • Added safety check requiring a valid branch when attempting to run development code.
  • Added back support for Craftbukkit versions 1.14 - 1.17.
  • Added internal support for extended height limits.
  • Added plural word support to all commands.
  • Added local caching for validated donation keys & translated phrases.
  • Changed the name of the "block:" parameter to "include:".
  • Changed the include/exclude parameters to no longer default to a block lookup.
  • Changed permission system to no longer force permissions if player is an operator.
  • Changed "rows" parameter maximum value to 1,000 when using the console.
  • Changed maximum chat/command message length for MySQL to 16k characters.
  • Changed connection handler to no longer specify a specific JDBC driver.
  • Changed timestamp method in API to return time in milliseconds.
  • Changed console messages to always display plugin name.
  • Improved user interface for rollbacks/restores.
  • Improved API functionality and changed API version from v6 to v7.
  • Fixed glass panes and fences not being connected when an adjacent block is rolled back.
  • Fixed blocks with gravity not being properly logged when pushed by a piston.
  • Fixed rolling back piston activity resulting in the pistons being broken.
  • Fixed axolotls and goats not rolling back as the correct variant.
  • Fixed ender chest player interactions not being logged.
  • Fixed eating or extinguishing a candle cake not being logged.
  • Fixed placing a candle on a cake not being logged.
  • Fixed liquid/snow blocks removed by buckets not being logged.
  • Fixed dispensers lighting adjacent blocks not being logged.
  • Fixed sand falling into light blocks not being properly logged.
  • Fixed certain adjacent blocks types being incorrectly logged as broken.
  • Fixed update checker attempting to process unexpected error messages.
  • Fixed legacy materials still being used when breaking certain blocks.
  • Fixed outdated Minecraft Wiki links in help commands.
  • Fixed "/co help reload" not returning any help information.
  • Fixed cached data not being cleared out after performing a rollback/restore.
  • Fixed single quotes not being properly parsed in configuration files.
  • Fixed lookup/rollback parameters allowing users to mix block/entity types, and risking unsafe ID collisions.
  • Fixed "incorrect string value" MySQL error for chat messages containing special characters.
  • Fixed NullPointerException when rolling back or restoring bundles.
  • Fixed NullPointerException when rolling back a block with an invalid ID.
  • Fixed NumberFormatException during startup if the server version is invalid.
  • Fixed ClassCastException when rolling back shulker boxes containing armor stands.
  • Fixed ArrayIndexOutOfBoundsException while logging hopper transactions.
  • Fixed NumberFormatException when entering an invalid decimal value.
----------, Jul 16, 2021

Download: CoreProtect v19.5

Changelog
  • Improved performance of lookup indexes when using a MySQL database.
  • Fixed blocks pushed with pistons not always being properly logged as being moved.
  • Fixed armor stands being incorrectly logged as broken by magma blocks.
  • Fixed dispensers incorrectly logging shears as being dropped.
  • Fixed items from droppers not always being properly logged as dropped.
  • Fixed invalid hopper transactions being logged when the destination container is full.
  • Fixed item transaction inconsistencies when rapidly changing items in a container attached to a hopper.
  • Fixed invalid item transactions being logged when hopper transaction logging is disabled.
  • Fixed AccessControlException when execute access is denied by security manager.
  • Fixed StackOverflowError randomly occurring when using chat components.
----------, Mar 11, 2021

Download: CoreProtect v19.4

Changelog
  • Changed connection timeout length for SQLite to reduce "database busy" errors.
  • Improved console and configuration file messages regarding donation keys.
  • Fixed instances of double chests incorrectly rolling back as two single chests.
  • Fixed plugin not starting up if WorldEdit failed to load properly.
----------, Jan 3, 2021

Download: CoreProtect v19.3

Changelog
  • Added dynamic consumer pausing to reduce "database busy" errors.
  • Fixed communication packet errors when using the latest release of MariaDB.
  • Fixed NoClassDefFoundError when performing rollbacks with Spigot 1.14/1.15.
  • Fixed NullPointerException when rollbacks contain data for missing worlds.
----------, Nov 6, 2020

Download: CoreProtect v19.2

Changelog
  • Fixed component errors by temporarily disabling hover events (re-enable with "hover-events: true").
  • Fixed teleportation command not always teleporting users to the correct location.
  • Fixed certain crafting table interactions being incorrectly logged as inventory transactions.
  • Fixed physics updates not being triggered when performing a rollback on wall blocks.
  • Fixed WorldEdit data being logged when when a block wasn't actually changed.
  • Fixed explosions not being logged when natural breakage logging is disabled.
  • Fixed clickable coordinates not working on world names that contain spaces.
  • Fixed outdated colour formatting when attempting to teleport to an invalid world.
  • Fixed "user not found" error when incorrectly performing a lookup on a page.
  • Fixed legacy colour codes not being properly parsed when processing components.
  • Fixed ConcurrentModificationException when processing hopper transactions.
  • Fixed ClassCastException when processing hopper transactions.
----------, Sep 8, 2020

Download: CoreProtect v19.1

Changelog
  • Added backwards compatibility with Spigot 1.14 and Spigot 1.15.
  • Changed "rows:<count>" parameter to have a maximum value of 100.
  • Improved missing donation key console message.
  • Improved error message when attempting to use Craftbukkit.
  • Improved performance when performing internal material comparisons.
  • Improved performance of WorldEdit operations when processing sign data.
  • Fixed colour formatting issues when performing a lookup via the console.
  • Fixed server hanging on shutdown if an unhandled exception occurs.
  • Fixed safe teleportation being applied to users in spectator mode.
  • Fixed sign text not always reappearing when breaking a sign with the inspector.
  • Fixed invalid donation key error when validation server is unreachable.
  • Fixed internal error during lookups when specifying an invalid number of rows.
  • Fixed NullPointerException when a basic lookup contains player kill data.
  • Fixed AssertionError when processing invalid container transaction data.
  • Fixed MySQLNonTransientConnectionException error on some MySQL servers.
  • Fixed ClassCastException error when modifying a spawner with WorldEdit.
  • Fixed ClassCastException error on some servers when placing doors/beds.
  • Fixed ClassCastException error when processing invalid button block data.
  • Fixed NullPointerException error when processing invalid hopper transactions.
----------, Jul 17, 2020

Download: CoreProtect v19.0

Changelog
  • Added Patreon for supporting development: https://www.patreon.com/coreprotect
  • Added full support for all Minecraft 1.16 block and entity types. [More Info]
  • Added logging for players picking up and dropping items (a:item).
  • Added logging for adding/removing items from containers via hoppers.
  • Added logging and rollback support for adding/removing books on lecterns.
  • Added logging for falling gravity blocks during explosions (e.g. falling sand blocks).
  • Added logging and rollback support for tropical fish patterns/colours.
  • Added logging and rollback support for Wandering Trader metadata.
  • Added logging of player locations for chat and command events.
  • Added "/co teleport <coordinates>" command (permission: coreprotect.teleport)
  • Added clickable coordinates to lookup results (enabled with teleport permission).
  • Added clickable navigation buttons to the pagination in lookup results.
  • Added ability to perform lookups on sign messages (a:sign & right-clicks).
  • Added ability to perform radius lookups on chat messages and commands.
  • Added ability to rollback items from containers in a radius without a specified user.
  • Added ability to specify a world when performing a purge (r:#world).
  • Added hidden "rows:<count>" parameter for specifying the number of rows in a lookup.
  • Added quotation support for values in the CoreProtect configuration file.
  • Changed colours in lookups to be more closely aligned with project colour scheme.
  • Changed basic lookups (e.g. /co near) to include item transaction data in results.
  • Changed minimum required version to Spigot 1.16. (Craftbukkit is no longer supported)
  • Changed release codebase to utilize the newer "refactor" repo with numerous internal code changes.
  • Changed project versioning to no longer use “v2” in version numbers.
  • Changed update notice to no longer include a sponsor message.
  • Improved formatting of timestamps in lookups, with extended information upon hover.
  • Improved performance of MySQL database operations by utilizing batching.
  • Improved performance of WorldEdit logging operations.
  • Improved performance of item transaction processing and logging.
  • Removed experimental "mysql-server-statements" configuration option.
  • Fixed double chests not always rolling back or restoring properly.
  • Fixed double blocks, such as tall grass and rose bushes, not always returning data when inspected.
  • Fixed damage from spectral arrows and tridents not logging the username of the shooter.
  • Fixed redstone torches on the side of a block not being logged when the block is broken.
  • Fixed buttons on the top/bottom of a block not being logged when the block is broken.
  • Fixed breaking an armor stand not always logging the armor stand contents.
  • Fixed lighting a campfire with flint and steel also logging fire placement.
  • Fixed interactions on chipped and damaged anvils not being logged.
  • Fixed players not being moved to safety during rollbacks/restores.
  • Fixed unnecessarily loading block data on player logins/logouts.
  • Fixed being unable to perform actions on usernames contain prefixes.
  • Fixed lookups not always displaying result data in the correct order.
  • Fixed WorldEdit 7.2+ not being detected as a valid WorldEdit version.
  • Fixed StackableItems breaking item transaction logging for certain containers.
  • Fixed SQLite purges not actually removing any data on some systems.
  • Fixed messages in console having an extra line break when using Spigot.
  • Fixed "database busy" errors unnecessarily displaying when running commands.
  • Fixed username based lookups not always returning data for the correct username.
  • Fixed unnecessary data being logged when an item doesn't contain metadata.
  • Fixed consumer data being discarded if the database server is unreachable.
  • Fixed MySQL connection errors on startup not displaying the full stack trace.
  • Fixed "/co lookup a:<action>" not displaying an informative error message.
  • Fixed "/co rollback a:+session" incorrectly performing a block rollback.
  • Fixed "/co rollback a:container" not listing the action type in the results.
  • Fixed TileEntity error when restoring a block directly over an existing container block.
  • Fixed "no query solution" error when looking up a block type while excluding a user.
  • Fixed NumberFormatException when entering certain invalid page numbers.
  • Fixed MysqlDataTruncation error when logging large amounts of metadata.
  • Fixed ArrayIndexOutOfBoundsException when logging container transactions.
  • Fixed various minor bugs, along with numerous other small changes and improvements.
----------, Jun 29, 2020

Download: CoreProtect v2.18.2

Changelog
  • Added intelligent logging deduplication for plant growth, liquid spread, and pistons.
  • Added ability to perform radius rollbacks via console (must specify coordinates & world).
  • Added hidden "mysql-server-statements" option for disabling server prepared statements.
  • Fixed rolling back stairs and trapdoors incorrectly placing additional blocks.
  • Fixed "/co undo" command not using location offset, resulting in incomplete undos.
  • Fixed performing a lookup or rollback on chickens not returning any results.
  • Fixed performing lookups with an entity name initiating legacy material support.
  • Fixed unsourced explosions logging with random block names, instead of "#explosion".
  • Fixed pistons incorrectly logging blocks as placed when they weren't actually moved.
  • Fixed text formatting issues when running "co status" from the console.
  • Fixed NullPointerException when logging blocks with an outdated internal cache.
----------, Feb 13, 2020

Download: CoreProtect v2.18.1

Changelog
  • Fixed double blocks, such as tall grass and rose bushes, not being rolled back.
  • Fixed breaking a door incorrectly logging the block below it as also being removed.
  • Fixed not being able to disable WorldEdit logging via the "/co reload" command.
  • Fixed ClassCastException when performing 2.18.0 upgrade on some legacy databases.
  • Fixed MySQLSyntaxErrorException when performing 2.18.0 upgrade on some MySQL databases.
  • Fixed 2.18.0 upgrade on SQLite databases not always saving version data in database.
  • Fixed 2.18.0 upgrade not being fully completed for users who received upgrade errors.
  • Improved the speed of MySQL database writes by approximately 25%.
  • Improved consumer data handlers to use less memory when queueing data.
----------, Feb 4, 2020

  • Fixed double blocks, such as tall grass and rose bushes, not being rolled back.
  • Fixed breaking a door incorrectly logging the block below it as also being removed.
  • Fixed not being able to disable WorldEdit logging via the "/co reload" command.
  • Fixed ClassCastException when performing 2.18.0 upgrade on some legacy databases.
  • Fixed MySQLSyntaxErrorException when performing 2.18.0 upgrade on some MySQL databases.
  • Fixed 2.18.0 upgrade on SQLite databases not always saving version data in database.
  • Fixed 2.18.0 upgrade not being fully completed for users who received upgrade errors.
  • Improved the speed of MySQL database writes by approximately 25%.
  • Improved consumer data handlers to use less memory when queueing data.
----------, Feb 4, 2020

Download: CoreProtect v2.18.0

Changelog
  • Added logging for bee entity metadata (such as if a bee is carrying pollen).
  • Added logging for pre-existing sign text data when placing signs.
  • Added logging for campfires lit via fire charges launched from dispensers.
  • Added logging for commands stored in repeating and chain command blocks.
  • Added legacy material and data value conversion to ensure future compatibility.
  • Added safety check to prevent "SQLITE_BUSY" errors under normal conditions.
  • Added a minimum version check for legacy database upgrades (2.0.0+).
  • Added informational message regarding CoreEdit to "/co status" command.
  • Changed minimum required Spigot version from Spigot 1.14 to Spigot 1.15.
  • Improved InventoryMoveItemEvent code for additional performance improvements.
  • Improved safety checks for handling corrupt data during lookups and rollbacks.
  • Improved error messages when a global rollback or lookup requires a username.
  • Improved processing of metadata for better compatibility with future updates.
  • Fixed explosions not logging adjacent data (such as attached signs and buttons).
  • Fixed dyed horse armor missing color data in container rollbacks/restores.
  • Fixed firework rockets missing metadata in container rollbacks/restores.
  • Fixed concrete powder dropped into water not logging the correct block position.
  • Fixed bed block placement not always logging the bed at the correct location.
  • Fixed WorldEdit logging not logging both halves of a broken door block.
  • Fixed WorldEdit logging not logging all block types, such as blocks of gold.
  • Fixed WorldEdit not being listed as a soft dependency in the plugin YAML file.
  • Fixed SQLite purges failing to recreate indexes on systems with limited /tmp space.
  • Fixed "blockLookup" method in the CoreProtect API not returning BlockData information.
  • Fixed rollbacks performed via API not checking if using the primary server thread.
  • Fixed "Unknown column 'blockdata'" error on some legacy MySQL databases.
  • Fixed internal ID map validation not always correctly validating new data.
  • Fixed consumer data not being processed after a database upgrade is aborted.
  • Fixed graphical glitches with the inspector when placing doors and breaking signs.
  • Fixed NotSerializableException when logging metadata for suspicious stews.
  • Fixed NotSerializableException when killing a horse equipped with dyed armor.
  • Fixed IllegalArgumentException when rolling back a lectern containing a book.
  • Fixed IllegalArgumentException when an attribute modifier already exists on an item.
  • Fixed ConcurrentModificationException when logging some container transactions.
  • Fixed NullPointerException when processing corrupt mob spawner blocks.
  • Fixed NullPointerException when creating an ItemStack with no metadata.
  • Fixed NullPointerException when performing rollbacks with missing data.
----------, Jan 31, 2020

Download: CoreProtect v2.17.5

Changelog
  • Fixed CoreProtect not recognizing custom "plugin" folder locations.
  • Fixed ClassCastException when other plugins trigger a malformed SignChangeEvent.
  • Fixed NullPointerException error on certain dispenser transaction events.
  • Improved performance of transaction handling in InventoryMoveItemEvent.
----------, May 31, 2019

Download: CoreProtect v2.17.4

Changelog
  • Added logging for foxes modifying blocks, such as when eating sweet berry bushes.
  • Fixed some container blocks not facing in the correct direction when rolled back.
  • Fixed rolling back half of a double chest making the remaining half become invisible.
  • Fixed missing "v" before version number on shutdown confirmation message.
  • Changed chest logging/rollbacks to no longer use custom block-data generator.
----------, May 23, 2019

Download: CoreProtect v2.17.3

Changelog
  • Added shutdown confirmation message for when CoreProtect has finished disabling.
  • Fixed "hasRemoved" method in the CoreProtect API incorrectly performing "hasPlaced".
  • Fixed NullPointerException randomly occurring when placing a crossbow in a chest.
----------, May 16, 2019

Download: CoreProtect v2.17.2

Changelog
  • Fixed data logging not properly finishing during shutdown in rare edge cases.
  • Fixed database connection not properly closing during shutdowns and reloads.
  • Fixed background update checker not immediately terminating during shutdown.
  • Improved handling of internal variables, to ensure values can't inadvertently be cached.
  • Improved consumer processing, to improve accuracy of the consumer size during shutdown.
  • Changed minimum required WorldEdit version from #4180 to #4268.
----------, May 13, 2019

Download: CoreProtect v2.17.1

Changelog
  • Added "coreprotect.lookup.near" permission, for restricting access to the "/co near" command.
  • Improved plugin shutdown to prevent unnecessary logging status messages from being displayed.
  • Fixed "coreprotect.lookup.kill" permission not being properly listed in the plugin.yml file.
  • Fixed Nether portal username logging not scanning the entire portal for the activator block.
  • Fixed NotSerializableException when placing a crossbow loaded with a firework in a chest.
----------, May 12, 2019

Download: CoreProtect v2.17.0

Changelog
  • Added support for new 1.14 container types (such as blast furnaces and smokers).
  • Added support for all new entity metadata (such as cat types and panda traits).
  • Added support for logging blocks attached to the bottom of a broken block.
  • Added logging for all new sign types (such as spruce and birch signs).
  • Added logging for text color changes made on signs by using dyes.
  • Added logging for cake blocks being modified by a player eating the cake.
  • Added logging for adding/removing items from the hand of an armor stand.
  • Added intelligent tracking for new block types (such as bamboo and lanterns).
  • Improved code for handling processing of AttributeModifier item data.
  • Changed minimum required Spigot version from Spigot 1.13 to Spigot 1.14.
  • Fixed containers double-logging contents when broken under rare circumstances.
  • Fixed trapdoors incorrectly logging as breaking when adjacent blocks are broken.
  • Fixed torches on the sides of a block not being logged when the block is broken.
  • Fixed removing blocks underneath sand blocks not properly logging the block movement.
  • Fixed breaking the block under a door not properly logging the top half of the door.
  • Fixed villagers not rolling back with correct data (such as the villager profession).
  • Fixed lighting Nether portals not logging the username of the player that lit the portal.
  • Fixed Nether portal logging not working for portals generated by the server.
  • Fixed armor stand logging not accounting for gravity and logging incorrect locations.
  • Fixed armor stand rollbacks not working when the armor stand is on a half block.
  • Fixed "/co status" showing the initial database version as 0.0.0 on new installs.
  • Fixed player interactions incorrectly being logged when cancelled by another plugin.
  • Fixed NullPointerException when logging waterlogged blocks modified via WorldEdit.
  • Fixed NullPointerException when using inspector to view inventory transactions.
  • Fixed EventException: null errors when logging Ocelot and Villager deaths.
  • Fixed UnsupportedOperationException when rolling back Ocelot deaths.
----------, May 10, 2019

Download: CoreProtect v2.16.3

Changelog
  • Fixed certain username based lookups incorrectly returning "user not found".
  • Fixed restoring minecart rails not restoring the correct rail orientation.
  • Fixed purges where no data is removed returning "-1 row(s) of data deleted".
  • Fixed CoreProtect not always loading when restarting a crashed server.
----------, Mar 13, 2019

Download: CoreProtect v2.16.2

Changelog
  • Added initial database version to "/co status" command.
  • Changed plugin.yml command descriptions to no longer include double quotes.
  • Fixed ConcurrentModificationException error on certain hopper transaction events.
----------, Mar 11, 2019

Download: CoreProtect v2.16.1

Changelog
  • Added WorldEdit logging status to "/co status" command (shows if enabled/disabled).
  • Added extra data validation to ensure data can't go missing when logging data.
  • Improved handling of users and metadata when processing and logging data.
  • Improved performance of plugin when adding data to be logged.
  • Improved update notice to ensure it's shown to all server operators.
  • Improved error message when unable to connect to MySQL server during startup.
  • Improved tab-complete to not suggest a command if the player doesn't have permission.
  • Changed "coreprotect.default" permission to no longer be a child of "coreprotect.*".
  • Changed "coreprotect.default" permission name to "coreprotect.co".
  • Fixed being unable to use the latest WorldEdit 7.0.0 Beta 5 release.
  • Fixed items placed into a chest not being logged if immediately removed by a hopper.
  • Fixed "cannot start a transaction within a transaction" SQLite error.
  • Fixed being unable to log data in CoreProtect on some non-English systems.
  • Fixed PersistenceRequired and CanPickUpLoot tags not being saved on entity deaths.
----------, Mar 8, 2019

Download: CoreProtect v2.16.0

Changelog
  • Added logging for players/entities breaking turtle eggs by standing on them.
  • Added logging for turtle eggs being laid as well as turtle egg hatching.
  • Added logging for water sources created by breaking an ice block.
  • Added logging for all structure growth data (such as grass changing to podzol).
  • Added logging for player interactions on new button types, such as jungle buttons.
  • Added logging support for WorldEdit v7 Beta 5+. Older versions of WorldEdit are no longer supported.
  • Added logging for new AttributeModifier item data that was added in Spigot 1.13.1.
  • Added progress indicator for data logging status when shutting down server.
  • Added progress alerts for patch scripts when upgrading to a new CoreProtect version.
  • Added notice for when WorldEdit logging has successfully initialized.
  • Added database lock to prevent multiple connections to the same CoreProtect database.
  • Added validator to detect corrupt internal caches, and to automatically reload from database.
  • Added "coreprotect.default" permission, for restricting access to the command handler.
  • Added "coreprotect.status" permission, for restricting access to the "/co status" command.
  • Added in-game notification for server ops when a new CoreProtect version is available.
  • Changed rollbacks to automatically handle corrupt BlockData, rather than aborting rollback.
  • Changed logging to strip out default BlockData information, to save space when logging data.
  • Changed "/co version" command to "/co status", and added consumer information to command.
  • Fixed "EventException" and "IllegalArgumentException" armor stand errors.
  • Fixed left clicking an armor stand incorrectly logging them as breaking
  • Fixed undyed Shulker Boxes not logging inventory transactions.
  • Fixed Shulker box logging issues when using third-party forks of Spigot.
  • Fixed obsidian, cobblestone and concrete generated from water/lava not being logged.
  • Fixed water sources placed adjacent to a "waterlogged" block not being logged.
  • Fixed lava placement on top of non-solid blocks not logging the lava at the correct location.
  • Fixed water placed from a dispenser into a non-solid block logging the block as breaking.
  • Fixed concrete formation incorrectly logging data at y0 (also patches existing data).
  • Fixed new data incorrectly being logged when a 2x2 tree fails to grow.
  • Fixed risk of data corruption when asynchronously adding data to be logged.
  • Fixed risk of data corruption when using "/co reload" while data is being logged.
  • Fixed data logger not properly processing all data when shutting down server.
  • Fixed CoreProtect not supporting the latest WorldEdit snapshot versions.
  • Fixed dispensers not logging all inventory changes when dispensing items.
  • Fixed skull logging storing legacy data instead of new BlockData information.
  • Fixed rolling back a broken nether portal not re-lighting the entire portal.
  • Fixed plugin attempting to spawn entities when no valid EntityType data exists.
  • Fixed being unable to exclude system usernames starting with "#" in commands.
  • Fixed WorldEdit v7.0.0+ logging not storing new BlockData information.
  • Fixed WorldEdit region selection not working with the latest WorldEdit builds.
  • Fixed "/co reload" re-binding to WorldEdit, causing duplicate data to be logged.
  • Fixed block/entity/world names, as well as BlockData info, being logged in user table.
----------, Mar 1, 2019

Download: CoreProtect v2.15.1

Changelog
  • Added the name of block being inspected when no inspector data found.
  • Fixed the inspector returning "no block data found" for upside-down stairs.
  • Fixed client-side block glitches when inspecting doors and double plants.
  • Fixed NumberFormatException error when using OpenJDK early-access builds.
  • Fixed NullPointerException error on certain inventory interact events.
  • Fixed NullPointerException error when adding/removing certain maps from chests.
  • Fixed ClassCastException error when attempting to log a skulls rotation data.
  • Fixed missing database errors when using "/co reload" to change database type.
  • Fixed broken update checker. No longer uses dev.bukkit.org for update checking.
----------, Jul 27, 2018

Download: CoreProtect v2.15.0

Changelog
  • Added full support for all Minecraft 1.13 block and entity types, including new data values.
  • Added full tab completion support. All base commands and parameters are now listed.
  • Added automatic conversion of old CoreProtect data, for usage with CoreProtect v2.15+.
  • Added check to prevent database corruption if a newer version of the plugin has been previously used.
  • Added additional data validation checks to reduce NullPointerExceptions triggered by other plugins.
  • Added logging support for WorldEdit v7+. Older versions of WorldEdit are no longer supported.
  • Added logging for EntityDamageByBlock and BlockExplode events. Explosions are now fully logged.
  • Added logging for chorus plant growth, including chorus flower movement.
  • Added logging for concrete powder turning into concrete from lava or water.
  • Added logging for entities that are killed by conduits (logs as #magic).
  • Added logging for waterlogged blocks, such as when a chest is under water.
  • Added logging for water and lava blocks that are placed from a dispenser.
  • Added logging support for up to 9 quintillion blocks, instead of only 2 billion.
  • Added cooldown for lookups and commands, to prevent users from intentionally overloading database.
  • Improved database connection handling. Creation of new database connections has been reduced by 99.94%.
  • Improved speed of MySQL purges. Disk space is no longer reclaimed unless #optimize is added in the command.
  • Improved API functionality and changed API version from v5 to v6.
  • Improved performance of explosion data logging, explosions now process data over three times as fast.
  • Improved logging of falling blocks, such as sand or anvil blocks that are placed above the ground.
  • Improved logging of data for all block types, including blocks from older Minecraft versions.
  • Improved logging of usernames (user tracking) for flowing water and lava.
  • Changed minimum required Java version from Java 7 to Java 8
  • Changed plugin metrics system from mcstats.org to bstats.org
  • Fixed plugin failing to load on Java 9.0.0 and Java 10.0.0.
  • Fixed issues with rollbacks when the same rollback is performed more than once.
  • Fixed potions with colour data, such as potions created via mcMMO, not being logged properly.
  • Fixed breaking half of a double chest logging the contents of the entire chest as being removed.
  • Fixed exploding beds in the nether logging explosions as being caused by the user "#air".
  • Fixed various issues with armour stand logging, lookups, and rollbacks.
  • Fixed safety teleport feature not safely moving you above fire/lava during a rollback.
  • Fixed command handling issues that could occur when WorldEdit wasn't also installed on the server.
  • Fixed "/co l a:username u:<user>" not displaying a proper error message if the user parameter is missing.
  • Fixed specifying b:container during a rollback not rolling back the containers contents.
  • Fixed rollbacks/restores not continuing when processing data from worlds no longer on the server.
  • Fixed lighting a nether portal not properly logging the portal creation data.
  • Fixed API lookups with a null action list returning results other than block data.
  • Fixed some MySQL database columns not being large enough to accommodate strings containing UTF-8 data.
  • Fixed various 1.13 bugs, such as blocks not rolling back properly and graphical glitches with the inspector.
----------, Jul 26, 2018

Download: CoreProtect v2.14.4

Changelog
  • Release for Spigot 1.11-1.12. This build contains the following changes, backported from CoreProtect 2.15.0.
  • Added additional data validation checks to reduce NullPointerExceptions triggered by other plugins.
  • Added check to prevent database corruption if a newer version of the plugin has been previously used.
  • Improved database connection handling. Creation of new database connections has been reduced by 99.94%.
  • Improved speed of MySQL purges. Disk space is no longer reclaimed unless #optimize is added in the command.
  • Changed minimum required Java version from Java 7 to Java 8
  • Changed plugin metrics system from mcstats.org to bstats.org
  • Fixed plugin failing to load on Java 9.0.0 and Java 10.0.0.
  • Fixed breaking half of a double chest logging the contents of the entire chest as being removed.
  • Fixed safety teleport feature not safely moving you above fire/lava during a rollback.
  • Fixed command handling issues that could occur when WorldEdit wasn't also installed on the server.
  • Fixed "/co l a:username u:<user>" not displaying a proper error message if the user parameter is missing.
  • Fixed specifying b:container during a rollback not rolling back the containers contents.
  • Fixed rollbacks/restores not continuing when processing data from worlds no longer on the server.
  • Fixed lighting a nether portal not properly logging the portal creation data.
  • Fixed API lookups with a null action list returning results other than block data.
----------, Jul 26, 2018

Download: CoreProtect v2.14.3

Changelog
  • Release for Spigot 1.9-1.10. This build contains all the changes in CoreProtect 2.14.4 and earlier.
----------, Jul 26, 2018

Download: CoreProtect v2.14.2

Changelog
  • Added rollback/restore support for all entity attribute data (e.g. movement speed).
  • Added a check to determine if the server is running a compatible version of Spigot before starting the plugin.
  • Added an update notice to "/co version" that displays when a new version is available.
  • Fixed NotSerializableException error when adding/removing exploration maps from chests. [780]
  • Fixed UnsupportedOperationException error when rolling back legacy entity data. [781]
  • Fixed WorldEdit logger still being partially initialized when disabled in config file.
----------, Dec 13, 2016

Download: CoreProtect v2.14.1

Changelog
  • Fixed broken chest rollbacks on clean installs of CoreProtect 2.14.0. [775]
  • Fixed "no such column" error during upgrades from CoreProtect 2.9.0 and earlier.
----------, Nov 20, 2016

Download: CoreProtect v2.14.0

Changelog
  • Added full support for all 1.11 block and entity types.
  • Added rollback/restore support for a Villager's active trades.
  • Added logging for player deaths (/co l u:<user> a:kill). [244]
  • Added logging for ender crystal placement and removal. [545]
  • Added ability to specify coordinates for radius rollbacks (c:x,y,z). [757]
  • Fixed sign text not being logged when a sign is destroyed from an explosion. [756]
  • Fixed the radius parameter not being detected when running commands inside command blocks. [773]
  • Fixed radius rollbacks displaying "#global" instead of the name of the current world.
  • Fixed nether warts not being logged as removed when the block under them is broken.
  • Fixed a rollback/restore bug that could result in items being changed in the wrong chest.
  • Fixed SSL connection warning shown when using a MySQL 5.5.45+ database.
  • Fixed NullPointerException rollback/restore errors for mob heads and item frames.
  • Fixed NullPointerException errors occurring when placing armor stands and end crystals.
  • Fixed UnsatisfiedLinkError occurring if unable to execute SQLite from the system temporary folder.
----------, Nov 20, 2016

Download: CoreProtect v2.13.2

Changelog
  • Release for Spigot 1.9-1.10. This build contains all the changes in CoreProtect 2.14.0 and earlier, minus version specific features.
  • Chest rollbacks are broken when using CoreProtect v2.13.2 on a clean install. To prevent this, first install CoreProtect v2.12.0, restart your server, and then upgrade to CoreProtect 2.13.2.
----------, Nov 20, 2016

Download: CoreProtect v2.13.1

Changelog
  • Added check to determine if server is running Java 1.7 or higher before starting plugin.
  • Changed MySQL connection handler to use a connection timeout instead of a network timeout.
  • Fixed dynamic patching system failing to detect JAR file under certain conditions.
----------, Jul 29, 2016

Download: CoreProtect v2.13.0

Changelog
  • Added logging for all 1.9/1.10 block and entity types.
  • Improved internal patching system to dynamically detect new patches.
  • Improved purges by having them defragment/recreate the entire database.
  • Improved MySQL connection handling & SQLite index handling.
  • Changed minimum requirements from Java 1.6 to Java 1.7.
  • Fixed internal caches becoming corrupted if the database format (MySQL/SQLite) is switched via "/co reload".
  • Fixed lookups with invalid radius parameters returning confusing results.
  • Fixed being unable to use "block:skull" as a valid lookup parameter.
  • Fixed "/co l u:<user> a:username" randomly failing due to an issue with the UUID cache.
  • Fixed purges on SQlite databases failing under certain conditions. [TICKET-536]
  • Fixed items dragged across slots in chests not being logged. [TICKET-550]
  • Fixed right clicking with the inspector performing a lookup twice. [TICKET-539]
  • Fixed slanted rails not being logged as broken when the adjacent block is removed. [TICKET-421]
----------, Jul 29, 2016

Download: CoreProtect v2.12.0

Changelog
  • Added logging for adding/removing items on armor stands.
  • Added logging for sticky pistons pulling blocks.
  • Added a logChat function to the API.
  • Added a logCommand function to the API.
  • Fixed the "coreprotect.inspect" permission not granting access to the "/co l <page>" command.
  • Fixed the blockLookup API function returning incorrectly formatted data.
----------, Jul 2, 2015

Resource Information
Author:
----------
Total Downloads: 1,103,077
First Release: Jun 24, 2015
Last Update: May 14, 2024
Category: ---------------
All-Time Rating:
22 ratings
Find more info at docs.coreprotect.net...
Version -----
Released: --------------------
Downloads: ------
Version Rating:
----------------------
-- ratings