BedcoreProtect Versions Save

BedcoreProtect is a fast, efficient, data logging and anti-griefing tool for PocketMine servers. Rollback and restore any amount of damage.

v0.6.0

4 years ago

Introductory notes

  • This update is recommended because it contains many improvements and bug fixes.
  • The update is backward compatible with v0.5.x
  • If you are already using BedcoreProtect v0.5.x and you upgrade to v0.6.0, you will notice a message of database upgrading. Don't worry, that's normal. It's the patch manager process that updates the database tables for the new version. If during the process you got a crash, please open a issue here!

Changelog

Features

  • Added /bcp undo command (Permission: bcp.subcommand.undo). Allows to undo the last rollback/restore.
  • Now block restrictions works. So, is now possible to include/exclude certain blocks during a rollback or a lookup.
  • When a player spawn an entity through a spawn egg is now logged.
  • When a entity dies due to a block (e.g. fire, lava, etc...) is now logged.
  • When a player ignites a TNT is now logged.
  • Code analyzed with PHPStan level 8.

Improvements

  • With SQLite the data will be saved every 5 minutes (same as worlds) instead of 5 hours.
  • Re-wrote query execution code getting a speed up!
  • Most of queries when executed are now scheduled in order by preventing missing or wrong logs.
  • Improved the QueryGenerator execution.
  • Improved painting break tracking.
  • Removed tiles when rollback placed blocks.
  • General minor improvements.

Changes

  • The patch manager is now able to patch a different numbers of patches for each database type.
  • From now in the database version of status command (/bcp status) will be applied a suffix indicating if the current database version is backward compatible. (e.g. - Database version: v0.6.1 (Backward Compatible))
  • Default SQLite database file name is now logs.db. (This change is backward compatible)

Bug fixes

  • Fixed #9
  • Fixed #12
  • Fixed an issue not allowing inspector to getting logs of the replaced block.
  • Fixed crash during the rollback of entities.
  • Fixed possible issue with command permission check order.
  • Fixed order of plugin data folder creation.
  • Fixed wrong position calculation of liquid tracking.
  • Fixed correct meta value (damage) when placing block.
  • Fixed wrong restore of bed and doors when placed.
  • Fixed duplicated door log when breaking.
  • Fixed block burning rollback not correctly working some times.
  • Fixed purge command not correctly working on SQLite.
  • Fixed excessive log during inventory transaction.
  • Fixed database file creation on start-up not taking the choosed file name in the config.
  • Fixed possibles crashes relative to null values while tracking.
  • When rollback an area containing blocks with light source, the light will try to be updated. (This avoid empty light areas)
  • Don't log anymore players when they die. It causes a crash while rollback.

v0.5.0-api3.4.0

4 years ago

WARNING

If you are upgrading the plugin from old versions to v0.5.x, you need to delete the database (bedcore_database.db file if you are using SQLite) and the configuration file (config.yml) because the plugin could not work as intended.

Features

  • Implemented multi-language support (english and italian at the moment).
  • Implemented database auto-patcher (when the database need some changes now it will be automatically patched without deleting your schema).
  • Implemented BlockSniper linking (from now you can rollback/restore selected areas and you can log all changes made with it).
  • Implemented UI (accessible through the command /bcp menu or /bcp ui).

Improvements

  • Rollback/restore operations are now made asynchronously (that means performance and time are boosted).
  • Big query are now built asynchronously (e.g. TNT explosions).
  • Database requests are now correctly made asynchronously without blocking main thread.
  • Some minor micro-optimizations.

Bug fixes

  • Fixed plugin reloading.
  • Fixed "blocks" and "exclusions" parameters not correctly working.
  • Fixed "rollback-items" config parameter that always rollback/restore when it's set on false.
  • Some minor issues fixed.

v0.4.2-api3.4.0

4 years ago

Fixes

  • Fixed rollback/restore items from inventories on SQLite
  • Fixed correct connection ending on SQLite.

v0.4.1-api3.4.0

4 years ago

Implemented Item Frames tracking and bug fixes.

Features

  • Added ItemFrame log tracking.

Fixes

  • Fixed tiles rollback/restore.

v0.4.0

4 years ago

New commands and small improvements!

General

  • A little bit changed the configuration parsing logic.
  • Allowed empty value on "enabled-worlds" to track on all worlds the logs.

Features

  • Added /bcp reload.
  • Added /bcp status.

Bug fixes

  • Fixed missing purge subcommand permission.
  • Fixed liquid spreading logs.

v0.3.1

4 years ago

It contains bug fixes and improvements:

  • Fixed error that occurs when explosions doesn't remove any block.
  • Improved removing side blocks
  • Support MC version v1.11 and 1.12

v0.3.0

4 years ago

New update released for BedcoreProtect, it contains almost all features, improvements and bug fixes!

General

  • Changed database structure. (if you were using v0.2.0, delete your tables before upgrading)
  • Support of API 4.0.0 (commit 12ee885).
  • Replaced symbol for parameter, example:
    • BEFORE -> /bcp rollback t:10s
    • NOW -> /bcp rollback t=10s
  • Reduced size of .phar file (removed the composer depedencies)

Features

  • Added rollback and restore of entities.
  • Added tracking of natural blocks breaking.
  • Added tracking of block movement.
  • Added tracking of block ignite (fire spreading).
  • Added tracking of leaves decay.
  • Added tracking of liquids.
  • Added per-world tracking, you can now choose in which world track player's log.
  • Added saving of blocks, items and entities NBT.
  • Added plugin updater.
  • Added timezone field to the config. (This is important to show correct log time!)

Bug fixes

  • After a rollback, you are now teleported on the top.
  • Fixed crash when wrong block id/name is parsed.
  • Blocks and exclusions parameters now accepts meta. Added track logging of items in a chest when it's broken.
  • Added track logging of "special" blocks (door and bed)
  • Fixed counting of changes when only inventory rollback is made.
  • Fixed text logging and rollback.
  • Fixed inventory logs.
  • Fixed chest pairing.
  • Fixed correct tracking of door and bed blocks placing/breaking.
  • Fixed command permissions when using aliases
  • Fixed required schema field on MySQL when using SQLite.
  • Fixed not all buttons and blocks with inventories are detected.
  • Improved database connection.
  • Improved counting of blocks/items/entites while rollback/restore.
  • Removed "worker-limit" field on config

v0.2.3

4 years ago

First stable release with bug fixes and SQLite support.

Check https://github.com/matcracker/BedcoreProtect/projects/1 to see the 0.1.0 features.