{"id":141083,"date":"2026-06-08T12:10:09","date_gmt":"2026-06-08T09:10:09","guid":{"rendered":"https:\/\/vpesports.com\/minecraft\/mods\/simplelogs\/"},"modified":"2026-06-08T12:10:09","modified_gmt":"2026-06-08T09:10:09","slug":"simplelogs","status":"publish","type":"mod","link":"https:\/\/vpesports.com\/minecraft\/mods\/simplelogs\/","title":{"rendered":"SimpleLogs"},"content":{"rendered":"<div align=\"center\">\n<p># \u26a1 SimpleLogs<br \/>\n### The Next-Generation Combat, Forensic &#038; Admin Logging System<\/p>\n<p>**Engineered for high-performance Spigot, Paper, and Purpur networks \u2014 Minecraft 1.21.1+**<\/p>\n<p>![Version](#)<br \/>\n![API](#)<br \/>\n![Platform](#)<br \/>\n![Author](#)<\/p>\n<p>*One plugin. Complete server visibility. Zero TPS impact.*<\/p>\n<\/div>\n<p>&#8212;<\/p>\n<p>## \ud83e\udde0 What is SimpleLogs?<\/p>\n<p>SimpleLogs is a production-grade server administration plugin built around a single philosophy: **your server should know exactly what happened, when it happened, and who did it \u2014 without ever sacrificing performance.**<\/p>\n<p>From combat loggers to base griefers, chest thieves to suspicious explosions, SimpleLogs captures everything silently in the background using fully asynchronous I\/O, smart rate limiting, and efficient data structures. No chunk scanning. No blocking operations. No compromise.<\/p>\n<p>Built from the ground up for **Spigot as its primary platform**, with full **Paper compatibility** out of the box.<\/p>\n<p>&#8212;<\/p>\n<p>## \u2694\ufe0f Combat Logging Prevention<\/p>\n<p>Stop players from escaping fights unfairly. SimpleLogs tags both players the moment PvP begins and holds that tag until the combat timer expires.<\/p>\n<p>&#8211; **Configurable Logout Actions** \u2014 choose `KILL`, `PUNISH`, or `BOTH` when a tagged player disconnects<br \/>\n&#8211; **Natural Item Drops** \u2014 the combat logger&#8217;s inventory drops at their exact location for the victor to collect<br \/>\n&#8211; **Punishment Engine** \u2014 apply `BAN`, `TEMPBAN`, `WARN`, or `NONE` as your server policy dictates. Tempban durations are fully configurable (`10m`, `1h`, `1d`)<br \/>\n&#8211; **Grace Period Protection** \u2014 newly joined players are immune to combat tagging for a configurable window (default 5 seconds), preventing spawn-kill abuse<br \/>\n&#8211; **Command Interception** \u2014 whitelist\/blacklist engine blocks escape commands like `\/spawn`, `\/tp`, `\/home` while always allowing chat commands like `\/msg` and `\/reply`. Fully configurable, bypass permission supported<br \/>\n&#8211; **Combat Feedback** \u2014 ActionBar or BossBar timer display with configurable colors, styles, and formats. Combat-start sound plays once on entry (default: Ender Dragon growl). All UI elements are individually toggleable<\/p>\n<p>&#8212;<\/p>\n<p>## \ud83d\udca3 Explosion Forensic System<\/p>\n<p>*Running a Private SMP? Ever needed to prove exactly who blew up someone&#8217;s base?*<\/p>\n<p>Activate `PRIVATE_SMP` mode to enable the full explosion forensics engine. Every detonation is captured as a timestamped forensic report containing everything you need for a thorough investigation.<\/p>\n<p>**Tracked explosion types:**<br \/>\n&#8211; TNT ignitions (with source player detection)<br \/>\n&#8211; Bed detonations in the Nether and End<br \/>\n&#8211; End Crystal explosions<br \/>\n&#8211; Respawn Anchor misuse<\/p>\n<p>**Every report includes:**<br \/>\n&#8211; Explosion type and exact coordinates<br \/>\n&#8211; Triggering player (or `UNKNOWN` if undetectable)<br \/>\n&#8211; Full snapshot of all online players \u2014 names, worlds, and coordinates at the exact moment of detonation<br \/>\n&#8211; Nearby suspects highlighted with precise block distance<br \/>\n&#8211; Multi-timezone timestamps (IST, CET, EST, PST)<\/p>\n<p>**Anti-lag system built in** \u2014 per-second rate limiting, per-location cooldowns, and automatic disabling under extreme spam (configurable threshold) ensure TNT machines and raid farms never degrade your TPS.<\/p>\n<p>> *Radius calculations use `distanceSquared` exclusively for suspect detection \u2014 no square root overhead on the main thread.*<\/p>\n<p>&#8212;<\/p>\n<p>## \ud83e\uddf1 Block Logging<\/p>\n<p>Track every block interaction across your server with surgical precision.<\/p>\n<p>&#8211; Logs **breaks** and **places** independently \u2014 toggle each action in config<br \/>\n&#8211; **Material filter system** \u2014 choose `BLACKLIST` mode to ignore junk blocks (dirt, stone, gravel, sand, leaves \u2014 40+ defaults included) or `WHITELIST` mode to log only specific blocks you care about<br \/>\n&#8211; **Per-player rate limiter** \u2014 configurable max events per second per player. Farms and mining machines never flood your logs<br \/>\n&#8211; `GLOBAL` mode (single file) or `PER_PLAYER` mode (one file per player)<br \/>\n&#8211; Query with `\/sl blocklogs <player>`<br \/>\n&#8211; Bypass permission for trusted staff or automated accounts<\/p>\n<p>&#8212;<\/p>\n<p>## \ud83d\udce6 Container Interaction Logging<\/p>\n<p>Know exactly who opened what, and who took or placed what items.<\/p>\n<p>**Tracked containers:**<br \/>\nChest, Barrel, Shulker Box, Hopper, Dropper, Dispenser, Furnace, Blast Furnace, Smoker, Brewing Stand<\/p>\n<p>**Tracked interactions:**<br \/>\n&#8211; `OPEN` \u2014 player opened the container<br \/>\n&#8211; `TAKE` \u2014 player removed items (direct click, shift-click, partial pickup)<br \/>\n&#8211; `PUT` \u2014 player placed items (direct placement, shift-click from inventory)<\/p>\n<p>Null items and AIR are automatically ignored. Shift-click direction is correctly resolved \u2014 no duplicate logs, no missed interactions.<\/p>\n<p>Per-player rate limiter and bypass permission included. `GLOBAL` or `PER_PLAYER` storage. Query with `\/sl containerlogs <player>`.<\/p>\n<p>&#8212;<\/p>\n<p>## \ud83d\udd0d Admin Investigation Tools<\/p>\n<p>The most powerful feature of SimpleLogs 2.0 \u2014 a unified investigation command that aggregates data from every log system simultaneously.<br \/>\n\/sl investigate <player>\n\/sl investigate <player> combat<br \/>\n\/sl investigate <player> blocks<br \/>\n\/sl investigate <player> containers<br \/>\n\/sl investigate <player> all<\/p>\n<p>Running `\/sl investigate <player>` fires **three parallel async reads** across combat logs, block logs, and container logs simultaneously. Results merge on the main thread and render as a single color-coded report \u2014 no waiting, no blocking, no lag.<\/p>\n<p>&#8211; Combat entries shown in red<br \/>\n&#8211; Block breaks in red, places in green<br \/>\n&#8211; Container takes in red, puts in green, opens in gray<br \/>\n&#8211; Configurable max entries per system<br \/>\n&#8211; Fully async \u2014 the main thread is never touched during disk reads<\/p>\n<p>&#8212;<\/p>\n<p>## \u2699\ufe0f Smart Server Mode System<\/p>\n<p>SimpleLogs adapts to your server type automatically.<\/p>\n<p>| Mode | Behavior |<br \/>\n|&#8212;|&#8212;|<br \/>\n| `UNSET` | Prompts the first OP to join with clickable setup buttons |<br \/>\n| `PRIVATE_SMP` | Full feature set \u2014 all logging systems active including explosion forensics |<br \/>\n| `PUBLIC` | Lightweight mode \u2014 explosion forensics disabled for maximum performance |<\/p>\n<p>Switch modes instantly with `\/sl setmode private` or `\/sl setmode public`. No restart required.<\/p>\n<p>&#8212;<\/p>\n<p>## \ud83d\udcdc Commands &#038; Permissions<\/p>\n<p>| Command | Description | Permission |<br \/>\n|&#8212;|&#8212;|&#8212;|<br \/>\n| `\/sl reload` | Reload configuration | `simplelogs.reload` |<br \/>\n| `\/sl setmode <private|public>` | Set server mode | OP |<br \/>\n| `\/sl history <player>` | View combat log history | `simplelogs.history` |<br \/>\n| `\/sl explosions` | View recent explosions | `simplelogs.explosions` |<br \/>\n| `\/sl blocklogs <player>` | View block log history | `simplelogs.blocklogs` |<br \/>\n| `\/sl containerlogs <player>` | View container log history | `simplelogs.containerlogs` |<br \/>\n| `\/sl investigate <player> [filter]` | Full investigation report | `simplelogs.investigate` |<\/p>\n<p>**Bypass permissions:**<br \/>\n&#8211; `simplelogs.bypass` \u2014 bypass combat command restrictions<br \/>\n&#8211; `simplelogs.blocklog.bypass` \u2014 exclude from block logging<br \/>\n&#8211; `simplelogs.containerlog.bypass` \u2014 exclude from container logging<\/p>\n<p>&#8212;<\/p>\n<p>&#8220;`<br \/>\n## \ud83d\udcc2 Log File Structure<\/p>\n<p>All logs are stored under `\/plugins\/SimpleLogs\/`:<br \/>\nSimpleLogs\/<br \/>\n\u251c\u2500\u2500 CombatlogPlayers\/<br \/>\n\u2502   \u2514\u2500\u2500 combat_log.txt (or <PlayerName>.txt in PER_PLAYER mode)<br \/>\n\u251c\u2500\u2500 ExplosionLogs\/<br \/>\n\u2502   \u2514\u2500\u2500 explosions.txt<br \/>\n\u251c\u2500\u2500 BlockLogs\/<br \/>\n\u2502   \u2514\u2500\u2500 block_log.txt (or <PlayerName>.txt)<br \/>\n\u2514\u2500\u2500 ContainerLogs\/<br \/>\n\u2514\u2500\u2500 container_log.txt (or <PlayerName>.txt)<br \/>\n&#8220;`<\/p>\n<p>All log entries are human-readable plain text with multi-timezone timestamps.<\/p>\n<p>&#8212;<\/p>\n<p>## \u26a1 Performance Architecture<\/p>\n<p>SimpleLogs was designed with performance as a first-class requirement \u2014 not an afterthought.<\/p>\n<p>&#8211; **Zero blocking main thread** \u2014 all file I\/O is exclusively asynchronous<br \/>\n&#8211; **ConcurrentHashMap** for combat sessions \u2014 thread-safe with no lock contention<br \/>\n&#8211; **EnumSet** for container type lookups \u2014 fastest possible enum membership check<br \/>\n&#8211; **Per-player rate limiters** \u2014 O(1) map lookup with lazy second-window cleanup<br \/>\n&#8211; **distanceSquared** for all radius checks \u2014 eliminates sqrt overhead<br \/>\n&#8211; **Dynamic listener registration** \u2014 explosion listener only registered in PRIVATE_SMP mode<br \/>\n&#8211; **Single tick task** for all combat expiration and UI updates \u2014 no per-player schedulers<br \/>\n&#8211; **In-memory ring buffer** for recent explosions \u2014 `\/sl explosions` never reads from disk<\/p>\n<p>&#8212;<\/p>\n<p>## \ud83d\udcca bStats Analytics<\/p>\n<p>SimpleLogs collects anonymous server statistics via bStats (Plugin ID: `30642`).<br \/>\nTracked metrics: server mode distribution. Can be disabled in the bStats global config.<\/p>\n<p>&#8212;<\/p>\n<div align=\"center\">\n<p>**SimpleLogs 2.0 \u2014 Built for servers that demand complete visibility without compromise.**<\/p>\n<p>*Authored and maintained by YounggamingDJ*<\/p>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>SimpleLogs \u2014 Lightweight Server Logging &#038; Monitoring System<\/p>\n","protected":false},"featured_media":141084,"template":"","meta":{"_minecraft_slug":"simplelogs","_minecraft_project_id":"Dg25bN28","_minecraft_author":"Younggamingdj","_minecraft_license":"LicenseRef-All-Rights-Reserved","_minecraft_downloads":19,"_minecraft_follows":0,"_minecraft_client_side":"unsupported","_minecraft_server_side":"required","_minecraft_storage_type":"zip","_minecraft_archive_name":"simplelogs.zip","_minecraft_size_bytes":140645,"_minecraft_version_count":2,"_minecraft_updated_at":"2026-05-15T22:45:21.801765Z","_minecraft_date_created":"2026-04-11T22:07:38.953231Z","_minecraft_date_modified":"2026-05-15T09:05:43.876880Z","_minecraft_project_url":"https:\/\/modrinth.com\/mod\/simplelogs","_minecraft_icon_attachment_id":141084,"_minecraft_imported_at":"2026-06-08T09:10:10+00:00","_minecraft_import_hash":"47e95ce8f82623170e1f745e243a669d","_minecraft_versions":"","_minecraft_links":"","_minecraft_gallery":"","_minecraft_api_metadata":""},"mod_category":[124,89,126,127,128,129,92],"mod_loader":[130,132,133,134],"minecraft_version":[62,37,40,41,73,74,38,78,79,80,81,82],"class_list":["post-141083","mod","type-mod","status-publish","has-post-thumbnail","hentry","mod_category-bukkit","mod_category-game-mechanics","mod_category-management","mod_category-paper","mod_category-purpur","mod_category-spigot","mod_category-utility","mod_loader-bukkit","mod_loader-paper","mod_loader-purpur","mod_loader-spigot","minecraft_version-1-21","minecraft_version-1-21-1","minecraft_version-1-21-10","minecraft_version-1-21-11","minecraft_version-1-21-2","minecraft_version-1-21-3","minecraft_version-1-21-4","minecraft_version-1-21-5","minecraft_version-1-21-6","minecraft_version-1-21-7","minecraft_version-1-21-8","minecraft_version-1-21-9"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.6 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>SimpleLogs - Minecraft<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/vpesports.com\/minecraft\/mods\/simplelogs\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"SimpleLogs - Minecraft\" \/>\n<meta property=\"og:description\" content=\"SimpleLogs \u2014 Lightweight Server Logging &amp; Monitoring System\" \/>\n<meta property=\"og:url\" content=\"https:\/\/vpesports.com\/minecraft\/mods\/simplelogs\/\" \/>\n<meta property=\"og:site_name\" content=\"Minecraft\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"5 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/simplelogs\\\/\",\"url\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/simplelogs\\\/\",\"name\":\"SimpleLogs - Minecraft\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/simplelogs\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/simplelogs\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/simplelogs-icon-5f3ce53a0eb5cc38fba9f7e76aa177579bdab5ac_96.webp\",\"datePublished\":\"2026-06-08T09:10:09+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/simplelogs\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/simplelogs\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/simplelogs\\\/#primaryimage\",\"url\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/simplelogs-icon-5f3ce53a0eb5cc38fba9f7e76aa177579bdab5ac_96.webp\",\"contentUrl\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/simplelogs-icon-5f3ce53a0eb5cc38fba9f7e76aa177579bdab5ac_96.webp\",\"width\":96,\"height\":96},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/simplelogs\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Mods\",\"item\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"SimpleLogs\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/#website\",\"url\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/\",\"name\":\"Minecraft\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"SimpleLogs - Minecraft","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/vpesports.com\/minecraft\/mods\/simplelogs\/","og_locale":"en_US","og_type":"article","og_title":"SimpleLogs - Minecraft","og_description":"SimpleLogs \u2014 Lightweight Server Logging & Monitoring System","og_url":"https:\/\/vpesports.com\/minecraft\/mods\/simplelogs\/","og_site_name":"Minecraft","twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"5 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/vpesports.com\/minecraft\/mods\/simplelogs\/","url":"https:\/\/vpesports.com\/minecraft\/mods\/simplelogs\/","name":"SimpleLogs - Minecraft","isPartOf":{"@id":"https:\/\/vpesports.com\/minecraft\/#website"},"primaryImageOfPage":{"@id":"https:\/\/vpesports.com\/minecraft\/mods\/simplelogs\/#primaryimage"},"image":{"@id":"https:\/\/vpesports.com\/minecraft\/mods\/simplelogs\/#primaryimage"},"thumbnailUrl":"https:\/\/vpesports.com\/minecraft\/wp-content\/uploads\/2026\/06\/simplelogs-icon-5f3ce53a0eb5cc38fba9f7e76aa177579bdab5ac_96.webp","datePublished":"2026-06-08T09:10:09+00:00","breadcrumb":{"@id":"https:\/\/vpesports.com\/minecraft\/mods\/simplelogs\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/vpesports.com\/minecraft\/mods\/simplelogs\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/vpesports.com\/minecraft\/mods\/simplelogs\/#primaryimage","url":"https:\/\/vpesports.com\/minecraft\/wp-content\/uploads\/2026\/06\/simplelogs-icon-5f3ce53a0eb5cc38fba9f7e76aa177579bdab5ac_96.webp","contentUrl":"https:\/\/vpesports.com\/minecraft\/wp-content\/uploads\/2026\/06\/simplelogs-icon-5f3ce53a0eb5cc38fba9f7e76aa177579bdab5ac_96.webp","width":96,"height":96},{"@type":"BreadcrumbList","@id":"https:\/\/vpesports.com\/minecraft\/mods\/simplelogs\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/vpesports.com\/minecraft\/"},{"@type":"ListItem","position":2,"name":"Mods","item":"https:\/\/vpesports.com\/minecraft\/mods\/"},{"@type":"ListItem","position":3,"name":"SimpleLogs"}]},{"@type":"WebSite","@id":"https:\/\/vpesports.com\/minecraft\/#website","url":"https:\/\/vpesports.com\/minecraft\/","name":"Minecraft","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/vpesports.com\/minecraft\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"}]}},"_links":{"self":[{"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/mod\/141083","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/mod"}],"about":[{"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/types\/mod"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/media\/141084"}],"wp:attachment":[{"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/media?parent=141083"}],"wp:term":[{"taxonomy":"mod_category","embeddable":true,"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/mod_category?post=141083"},{"taxonomy":"mod_loader","embeddable":true,"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/mod_loader?post=141083"},{"taxonomy":"minecraft_version","embeddable":true,"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/minecraft_version?post=141083"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}