CPVisualizer: Private CoreProtect History in a GUI

CPVisualizer turns CoreProtect logs into a private, in-game history browser for Minecraft, with filters, highlights and teleports.

CPVisualizer: Browse CoreProtect History Without Leaving the Game

Every server administrator knows the ritual: a player reports a missing chest, a griefed wall, or a suspicious build, and you dive into CoreProtect commands, scrolling through chat lines until your eyes glaze over. CPVisualizer changes that workflow entirely. It is a Paper plugin that turns CoreProtect's recorded data into a clean inventory GUI, so you can browse block and container actions visually, filter them, and jump straight to the scene of the crime.

What CPVisualizer Actually Does

CPVisualizer is a visualization layer that sits on top of CoreProtect. It does not replace it, modify it, or store its own copy of your history. Instead, it queries the CoreProtect API and presents the results as pages of items inside a menu you can click through.

Each search result shows placement, breaking, interaction, and container additions or removals. You can search a single historical player or every online and offline player at once, filter by one block material or search all block types together, and narrow everything down by time, world, and radius. Results are paginated, event details are readable in the GUI, and a teleport option takes you directly to the location.

Privacy Is the Whole Point

The feature that gives the plugin its name is isolation. Every administrator gets an independent search session, and the BlockDisplay highlights that mark matching positions are private and non-persistent. Only the operator who ran the search sees the glowing markers. Other staff members, and ordinary players, see nothing. When the session ends, the highlights vanish, and your world is never altered by the visualization itself.

Supported Versions and Requirements

CPVisualizer targets Paper 26.3 running on Java 25. It requires a CoreProtect build compatible with that platform, with API 12 enabled, and CoreProtect remains a separate required dependency. The plugin does not bundle it. Folia and other server platforms are not supported. Version 1.1.1 ships with fully English menus and messages, and no client mod or ProtocolLib is needed, so players and staff connect with a vanilla client.

An unofficial CoreProtect 24.1 compatibility port is available separately, complete with source code and license, which is useful if you are pinned to an older CoreProtect release.

How to Install CPVisualizer on Your Server

Installation is deliberately short, and knowing how to install it correctly saves you a restart loop later.

  • Stop the server completely.
  • Install a CoreProtect build compatible with Paper 26.3 and enable API 12.
  • Place the plugin jar in your plugins folder.
  • Start Paper 26.3 with Java 25.
  • Run /cpv as an operator to open the interface.

If you would rather skip manual file handling, the foxygame.net launcher offers a one-click install path for CPVisualizer, pulling the correct build for your server version and keeping it updated automatically.

Commands, Filters, and Everyday Use

The command tree is built around a single root: /cpv. From there you stack filters before running a search. Common examples include /cpv player all, /cpv block all, /cpv action ALL, /cpv time 24h, /cpv radius 100, and /cpv search. Typos are tolerated too, so /cpv blocks all, /cpv bloks all, and even a bare asterisk all work as expected.

Two details are worth remembering. CoreProtect system actors beginning with a hash symbol are excluded from all-player results, which keeps automated entries out of your way. Radius searches use an inclusive X/Z square that spans all heights, so a 100-block radius covers the full vertical column rather than a sphere.

Permissions and Limits

Permissions default to operators: cpvisualizer.use, cpvisualizer.search, and cpvisualizer.teleport. The cpvisualizer.admin node includes all three and additionally permits /cpv reload. Global all-player block searches cover loaded worlds, and the default final limit is 500 events. If you hit that ceiling, narrow your time window or radius and search again. Historical container types are inferred from retained logs, and uncertain types only appear when all blocks are selected.

Performance and Reliability Notes

Background queries are bounded with configurable limits, so a broad search will not quietly exhaust your database connection pool. History and real blocks are never changed by visualization. All 14 automated tests passed against both the official CoreProtect Maven API and the compatibility port, and integration checks passed on Paper 26.3 build 169 with SQLite, covering filtering, multiple worlds, private non-persistent displays, and CoreProtect rollback and restore behavior.

Be aware of the gaps: visual verification with two real game clients, MySQL, WorldEdit, and Folia has not been completed. The plugin is licensed under MIT, while CoreProtect retains its own Artistic License 2.0 and upstream authorship. Development disclosure: implementation and documentation were generated with AI from project requirements and reviewed with automated and server integration checks. The plugin itself does not use an AI service.

Final Thoughts

If you run Paper 26.3 with Java 25 and rely on CoreProtect daily, CPVisualizer is a genuinely practical upgrade to your moderation toolkit. It shortens the distance between a player report and the evidence behind it, keeps each administrator's investigation private, and never touches the data it reads. Download CPVisualizer, enable API 12, and let your staff stop reading chat logs and start clicking through history instead.