Skip to content

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

License

Notifications You must be signed in to change notification settings

PoggitTestPlugins/BedcoreProtect

 
 

Repository files navigation

Discord

BedcoreProtect

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

Features

  • Fast efficient data logging.
  • Fast rollbacks.
  • No configuration required. Put the plugin on your server, and you're good to go.
  • Multi-language support.
  • User interface (UI) support.
  • 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 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
  • Restrict rollbacks/restores to a radius area.
  • 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.
  • Lookup, rollback, or restore by a specific action.
  • Exclude multiple blocks.
  • BlockSniper support.

...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 explosions
  • Log flint & steel
  • Log fire igniting blocks
  • Log blocks burning up in fires
  • Log block movement (Falling sand/gravel)
  • Log leaves decay
  • Log player interactions
  • 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)

...and the list is still expanding!

Database Minimum Requirements

  • SQLite version must be >= 3.28.0 (not tested with older versions)

OR

  • MySQL version must be >= 5.6.4

Commands

The main command is /bedcoreprotect but it accepts the folllowing aliases: /bcp, /core, /co (Main permission: bcp.command.bedcoreprotect)

Quick command overview:

  • /bcp help - Display a list of commands (Permission: bcp.subcommand.help)
  • /bcp inspect - Toggle the inspector mode (Permission: bcp.subcommand.inspect)
  • /bcp menu - Display a graphic interface to use the plugin (UI). (Permission: bcp.subcommand.menu)
  • /bcp rollback <params> - Rollback block data (Permission: bcp.subcommand.rollback)
  • /bcp restore <params> - Restore block data (Permission: bcp.subcommand.restore)
  • /bcp lookup <params> - Advanced block data lookup (Permission: bcp.subcommand.lookup)
  • /bcp purge <params> - Delete old block data (Permission: bcp.subcommand.purge)
  • /bcp reload - Reload the configuration file (Permission: bcp.subcommand.reload)
  • /bcp status - View the plugin status (Permission: bcp.subcommand.status)

Shortcut commands:

  • /bcp near [value]: Performs a lookup with radius (default 5) (Permission: bcp.subcommand.near)
  • /bcp undo: Revert a rollback/restore via the opposite action (Permission: bcp.subcommand.undo)

Advanced command overview:

/bcp help
Diplay a list of commands in-game

/bpc inspect
Enable the inspector. Type the command again to disable it. You can also use just "/bcp i"

/bpc menu
Display a graphic interface to simplify the plugin commands usage. You can also use just "/bcp ui"

/bcp rollback u=<user> t=<time> r=<radius> a=<action> b=<blocks> e=<exclude>
Nearly all of the parameters are optional. Shortcut: "/bcp rb".

u=<user> - Specify a user to rollback.
Example: u=Shoghi u=Shoghi,#zombie

t=<time> - Specify the amount of time to rollback.
You can specify weeks,days,hours,minutes, and seconds.

Example: t=4w5d2h7m20s

You can pick and choose time amounts.
Example: t=5d2h

r=<radius> - Specify a radius.
You can use this to only rollback blocks near you.

For example, the following would only rollback damage within 10 blocks of where you are standing: r=10

a=<action> - Restrict the lookup to a certain action.
For example, if you wanted to only rollback blocks placed, you would use a:+block

Here's a list of all the actions:
• a=block (blocks placed/broken)
• a=+block (blocks placed)
• a=-block (blocks broken)
• a=click (player interactions)
• a=container (items taken from or put in chests, etc.)
• a=+container (items put in chests, etc.)
• a=-container (items taken from chests, etc.)
• a=kill (mobs/animals killed)

b=<blocks> - Restrict the rollback to certain block types.
For example, if you wanted to only rollback stone, you would use b=1
You can specify multiple items, such as b=1,5,7
or b=stone,planks,bedrock

You can find a list of block type IDs at https://minecraft.gamepedia.com/Bedrock_Edition_data_values

e=<exclude> - Exclude certain block types from the rollback.
For example, if you don't want TNT to come back during a rollback, you would type e:46

/bpc restore u=<user> t=<time> r=<radius> a=<action> b=<blocks> e=<exclude>
Same parameters as /bcp rollback. Shortcut: "/bcp rs".

Restoring can be used to undo rollbacks.

/bcp lookup u=<user> t=<time> r=<radius> a=<action> b=<blocks> e=<exclude>
Search through block data using the same parameters as /bcp rollback. Shortcut: "/bcp l".

If multiple pages are returned, use the command "/bcp lookup <page>" to switch pages.
To change the number of lines displayed on a page, use the command "/bcp lookup <page>:<lines>".

For example, "/bcp l 1:10" will return 10 lines of data, starting at the first page.

/bcp purge t=<time>
Purge old block data. Useful for freeing up space on your HDD if you don't need the older data.

For example, "/co purge t:30d" will delete all data older than one month, and only keep the last 30 days of data.

FAQ

I found a bug, where can I report it?

  • You can report here by clicking button "Get Started" on Bug report.

Where can I request a new feature?

  • You can ask a new feature here by clicking button "Get Started" on Feature request.

About

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

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • PHP 100.0%