Sueta

PlayerLog NG | Forensic Incident Journal

2.0.0

Forensic incident journal, timelines and cases for Paper 26.2

·Plugin

PlayerLog NG
Forensic incident journal for Paper 26.2

PAPER ONLY - IMPORTANT COMPATIBILITY NOTICE

PlayerLog NG 2.0.0 requires Paper 26.2 and Java 25. It does not support plain Spigot or CraftBukkit servers.
The download is a ZIP archive. Extract it first, then copy PlayerLogNG-2.0.0.jar into your Paper server's plugins/ folder.
What is PlayerLog NG?
PlayerLog NG is an evidence-oriented event recorder for moderation teams. It stores factual server events in a daily, SHA-256-chained SQLite journal and reconstructs incident timelines for human review.
The plugin does not decide guilt and never applies automatic punishments.
Main features

  • Daily SHA-256 journal chains with sequence numbers, previous hashes and journal heads
  • SQLite/WAL storage with synchronous=FULL and bundled JDBC driver
  • Asynchronous batch writer instead of writing every event synchronously on the tick thread
  • Incident timelines with paginated raw evidence
  • Direct relationship analysis between two players
  • Incident cases with configurable evidence windows before and after a report
  • Retention protection for complete journal days referenced by a case
  • Boundary detection for phrases such as “stop” and “leave me alone”
  • Contact-after-boundary, repeated-approach and teleport-following review signals
  • Proximity intervals instead of continuous movement recording
  • Privacy-conscious HMAC-SHA-256 network fingerprints; raw IP storage is disabled by default
  • Arguments of login, register and password-change commands are excluded by default
  • Optional best-effort ownership context through WorldGuard and GriefPrevention
  • Built-in journal integrity verification

Recorded event categories

  • Player join and quit
  • Chat and explicit boundary requests
  • Selected social commands
  • PvP damage, projectile hits, deaths and kills
  • Block break and place
  • Container and door interactions
  • Item drop and pickup
  • Signs and books
  • Teleports and world changes
  • Proximity intervals
  • Interactions involving tamed entities

Commands

/pl investigate <player> [hours]
/pl timeline <player> <YYYY-MM-DD> <HH:mm> <HH:mm> [page]
/pl raw <player> [hours] [page]
/pl relationship <playerA> <playerB> [days]
/pl case create <target> <reported> <reason>
/pl case list [page]
/pl case show <ID> [page]
/pl verify [YYYY-MM-DD]
/pl status
/pl reload
/playerreport <player> <reason>

Permissions

  • playerlog.investigate - view timelines and raw events - default: OP
  • playerlog.case - create and inspect cases - default: OP
  • playerlog.verify - verify journal hash chains - default: OP
  • playerlog.admin - status and configuration reload - default: OP
  • playerlog.report - submit an incident report - default: all players

Installation

  1. Install Paper 26.2 and Java 25.
  2. Download and extract the ZIP file.
  3. Copy PlayerLogNG-2.0.0.jar to the server's plugins/ directory.
  4. Start the server.
  5. Review plugins/PlayerLogNG/config.yml, especially timezone, retention and privacy settings.
  6. Grant forensic permissions only to trusted moderators.
  7. Run /pl status and /pl verify <YYYY-MM-DD>.

Upgrading from PlayerLog 1.0
Version 2.0.0 is a complete rewrite. Legacy text logs and old configuration files are not imported automatically.

  1. Stop the server cleanly.
  2. Archive the complete old PlayerLog plugin folder and all legacy logs without modifying them.
  3. Remove the old PlayerLog.jar.
  4. Install PlayerLogNG-2.0.0.jar.
  5. Let the plugin generate a new configuration and review it.
  6. Preserve old evidence separately and read-only.

Privacy and backups
Server owners are responsible for player notices, lawful processing, access control and retention periods. Chat and book content can contain sensitive information.
For safe backups, stop the server or use a SQLite-consistent backup method. Copying only journal.db while the server is running is not sufficient in WAL mode.
The journal chain makes unexpected modifications detectable. It is not an external signature, immutable storage or a trusted timestamp. Protected external backups are recommended for stronger evidence preservation.
Requirements and test status

  • Paper 26.2
  • Java 25
  • Tested against Paper build 112
  • WorldGuard and GriefPrevention are optional soft dependencies
  • Automated four-player incident simulation
  • Journal, case window, relationship, review score and hash-chain verification

JAR SHA-256

fc12cb5207cc1c2dff93d55b11bf8521d0b4b8cb94f643d9488b88f03a2d8e36
Deutsch

PlayerLog NG 2.0.0
PlayerLog NG ist ein forensischer Ereignisrekorder für Paper 26.2 und Java 25. Das Plugin führt ein täglich SHA-256-verkettetes SQLite-Journal und erstellt sachliche Incident-Timelines, Relationship-Auswertungen und geschützte Case-Zeitfenster.
Explizite Grenzsetzungen sowie anschließender Kontakt können eine menschliche Prüfung empfehlen. Das Plugin trifft keine Schuldentscheidung und führt keine automatischen Sanktionen aus.
Wichtig: Reine Spigot-/CraftBukkit-Server werden nicht unterstützt. Alte PlayerLog-1.0-Textlogs und Konfigurationen werden nicht automatisch migriert. Vor dem Upgrade den Server stoppen und den alten Pluginordner unverändert archivieren.
Serverbetreiber müssen Informationspflichten, Berechtigungen und Aufbewahrungsfristen passend zu den lokalen Regeln festlegen. Für Backups den Server stoppen oder eine SQLite-konsistente Methode verwenden.

Similar projects

Plugin →