▶️ ЗАБЕРИ СВОИ 8 ПОДАРКОВ 🎁 ПРИ СОЗДАНИИ СВОЕГО МАЙНКРАФТ СЕРВЕРА
Моды/BlockRollback
BlockRollback

BlockRollback

You can roll back changes to blocks or the deletion of entities, and view the history.

41
0

BlockRollback

BlockRollback is a lightweight audit and rollback plugin for Bukkit-family 1.21.x servers such as Paper, Spigot, and Purpur.
It records player actions, some natural changes, and command-based edits into SQLite so they can later be inspected, looked up, and rolled back with inspect, lookup, and rollback.

You can use /br as an alias for /blockrollback.

Main Features

  • Records block placement and breaking, bucket actions, explosions, fire, fluid flow, and natural block updates
  • Records container item transactions and block click interactions
  • Records block placement and breaking, mob deaths, item despawns, and changes caused by /fill and /kill
  • Inspect mode lets you check the history of the clicked coordinates in place
  • Search logs by player name, special tags, time range, and radius
  • Supports rolling back block changes as well as restoring killed mobs and despawned items
  • Uses SQLite locally, so no external database server is required
  • Supports multilingual messages

Supported Environment

  • Bukkit-family 1.21.x
  • Based on the Paper API 1.21.4
  • Java 21
  • Paper, Spigot, Purpur, and compatible loaders

Commands

CommandDescription
/br inspect [on|off]Toggles Inspect mode. While it is on, clicking a block shows the history of that block position.
/br lookup <player|*|#Mobs|#DespawnItem> <time> [radius] [page]Searches logs that match the given conditions. time uses formats such as 30m, 1h, 1d, 1w, and 1y.
/br rollback <player|*|#Mobs|#DespawnItem> <time> [radius]Applies rollbackable records that match the given conditions.
/br tp <world> <x> <y> <z>Teleports you to the coordinates from a lookup result.
/br cancelCancels the currently running rollback.
/br statusShows database size, log count, write queue status, and rollback progress.
/br reloadReloads config.yml, config.json, and language files.
/br helpShows help.

Examples

  • /br inspect on
  • /br lookup Steve 1h 20
  • /br lookup #TNT 1d
  • /br rollback Steve 30m 20
  • /br rollback #Mobs 15m 30
  • /br rollback #DespawnItem 10m 20

How Filters Work

  • A player name such as Steve targets block-related changes associated with that player
  • * targets every rollbackable record within the scope
  • #Mobs targets mob death records
  • #DespawnItem targets item despawn records
  • Special tags such as #TNT, #Creeper, #Fire, #Fluid, and #Natural can also be used for lookup and rollback

What Gets Logged

Rollbackable

  • Block placement and breaking
  • Bucket placement and pickup
  • Destruction caused by explosions
  • Burning caused by fire
  • Fluid flow
  • Natural block changes
  • Block changes caused by /fill
  • Mob deaths and mob removals caused by /kill
  • Item despawns

Audit Only

  • Putting items into containers and taking items out
  • Left-click and right-click interactions on blocks

Permissions

PermissionDescriptionDefault
blockrollback.inspectToggle Inspect modeOP
blockrollback.lookupRun lookup and use /br tpOP
blockrollback.rollbackRun rollback and cancelOP
blockrollback.adminRun status and reloadOP

Configuration

config.yml

Main settings:

KeyDescription
database-fileSQLite file name
log.block-place-breakLog block placement and breaking
log.bucketsLog bucket actions
log.container-transactionsLog container transactions
log.item-despawnLog item despawns
log.mob-killLog mob deaths
log.interactionsLog block clicks
log.explosionsLog explosions
log.fireLog burning caused by fire
log.fluid-flowLog fluid flow
log.natural-block-updatesLog natural block updates
inspect.use-adjacent-when-holding-blockWhen holding a block and right-clicking, inspect the adjacent target position
rollback.default-radiusDefault radius used when a player omits the radius
rollback.max-radiusMaximum rollback radius
rollback.max-records-per-runMaximum records processed in one rollback run
rollback.apply-per-tickNumber of records applied per tick
command-tracking.fillEnable /fill tracking
command-tracking.fill-max-blocksMaximum number of blocks tracked for /fill
command-tracking.killEnable /kill tracking
command-tracking.kill-max-entitiesMaximum number of entities tracked for /kill
command-tracking.console-worldWorld name used for console-issued commands
command-tracking.notify-skipNotify when tracking is skipped because the target is too large

config.json

config.json is used to configure the language.

{
  "configVersion": 1,
  "language": "en_us "
}

Supported languages:

  • ja_jp
  • en_us
  • de_de
  • fr_fr
  • ru_ru
  • zh_cn

The default value on first launch is en_us.
You can also edit the .lang files generated in plugins/BlockRollback/lang/ to create your own translation.

Behavior Notes

  • Only one rollback can run at a time
  • For lookup and rollback, radius filtering uses the executor's current position when run by a player
  • Radius-based lookup cannot be used from the console
  • While Inspect mode is enabled, normal block interaction is cancelled so the click can be used for audit display
  • A record is skipped if the destination world does not exist or if the target entity is already present

Stored Data

  • Logs are stored as SQLite in plugins/BlockRollback/<database-file>
  • The table name is action_logs
  • Indexes are created for time, player name plus time, and location

Совместимость

Minecraft: Java Edition

1.21.x

Создатели

Детали

Лицензия:LicenseRef-All-Rights-Reserved
Опубликован:1 месяц назад
Обновлён:3 недели назад
Главная