Skip to content

Rollback and Restore

Arkonix Game Studio edited this page Nov 14, 2026 · 3 revisions

Rollback and Restore

Revert and re-apply changes with a detailed preview.

Commands

/up rollback u:Griefer t:2h r:30 #preview
/up apply
/up restore  u:Griefer t:2h r:30
/up undo
  • rollback reverts changes, restore re-applies rolled back changes.
  • A time (t:) is required.
  • Without r: the radius is 10 blocks. In the console you must name the area, for example r:#world or r:#global.

What can be rolled back?

Kind Actions Behavior
Blocks, including block updates and item frames block, +block, -block Old state is restored, including sign text and container extras
Container contents container, +container, -container Items are put back or removed, including full item data
Player inventories inventory, +inventory, -inventory Dropped, crafted and picked up items
Killed mobs kill The mob is revived with its saved data. Villagers keep profession, level and trades
Spawned mobs spawn The mob is removed

Preview

With #preview nothing changes on the server. The changes are only shown on your client and you get a detailed summary:

  • Scope: area, time and filters
  • Log entries: how many entries are affected
  • Blocks: transitions such as stone -> air
  • Containers, entities and inventories
  • Buttons [Apply] and [Cancel]

Confirm with [Apply] or /up apply, discard with [Cancel] or /up cancel. A preview expires after preview.timeout-seconds.

Tip: Always use #preview for large rollbacks. It costs nothing and shows exactly what will happen.

Undo

/up undo reverts the last rollback or restore. Rolled back entries are flagged in the database and appear struck through in lookups. Rolling back twice does no harm.

Tags

Tag Effect
#preview Show a preview first
#verbose More detailed result report
#silent No output

Performance

Large rollbacks are spread over many ticks (rollback.time-budget-ms), so the server keeps running smoothly.

Commands like /fill (#command)

Block changes made with /fill, /setblock and /clone are logged and can be rolled back and restored with the tag #command. execute ... run is understood when the coordinates are absolute.

/up rollback t:10m #command #preview      Commands of all players from the last 10 minutes
/up rollback u:Steve t:1h #command        Only Steve's commands
/up rollback t:1h #command r:50           Only within 50 blocks of you
/up restore t:10m #command                Re-apply them
/up lookup t:1h #command                  Only look at them
  • The user is optional. Without u: the commands of all players are affected.
  • Without r: the whole server is searched, not just 10 blocks.
  • Containers and signs get their contents back.
  • Logging can be turned off with log.command-blocks, see Configuration.

Limits:

  • Only commands run by players are tracked, not commands from the console or command blocks.
  • A command that changes more than 262,144 blocks is not tracked.
  • execute with relative coordinates (~, ^) or with at, positioned, in or align is ignored.
  • Commands run before this feature existed cannot be rolled back.

Crash recovery

Every rollback and restore is journaled. If the server stops in the middle of one, it is resumed automatically a few seconds after the next start. The console shows a [Recovery] message. Not available with ClickHouse.

Reports and audit

Long rollback reports are split into pages, use /up view <n>. Rollbacks, restores and undos are recorded in the staff audit log, see Investigation and Alerts.

Fabric: World names are dimension IDs. Use #the_nether, #overworld and #the_end instead of #world_nether, #world and #world_the_end. See Platforms.


Related pages: Parameters and Tags · Purge · Troubleshooting

Clone this wiki locally