LogBlock

Aus Nitradopedia
Wechseln zu: Navigation, Suche
LogBlock
Pluginlogo-LogBlock.png
Servermod: Bukkit‎
Kategorie: AntiGrief
Entwickler: DiddiZ
Entwicklerwebsite: Bukkit
Was bewirkt es? Ermöglicht es Griefing rückgängig zu machen
Besonderheiten: Bietet viele Konfigurationsmöglichkeiten
Download: Link

Dieser Artikel befasst dich mit der Verwendung des Bukkit-Plugins Logblock (im Folgenden auch LB).
Dieses Plugin ermöglicht es Serveradmins zu sehen welcher Spieler zu welcher Zeit welchen Block (ab-)gebaut, welche Truhe geöffnet oder einen anderen Spieler getötet hat.
Außerdem ermöglicht LogBlock sogenannte "Rollbacks", also eine Art Zurückspulen sämtlicher Handlungen eines bestimmten Spielers/in einer bestimmten Region und kann so z.B. Griefingschäden beheben.
Dadurch ist LogBlock eines der wichtigsten Plugins um gegen Griefer vorzugehen und außerdem eines der meistgenutzten Bukkit-Plugins.

YouTube Video


Installation

Um LogBlock zu installieren, befolge einfach, die folgenden beiden Tutorials. Eine Erklärung zur Konfiguration der Config, die im 1. Tutorial erwähnt wird findest du im nächsten Abschnitt:

  1. Installation von Bukkit-Plugins
  2. Plugins einrichten die die MySQL-Datenbank benötigen



Konfiguration

Wenn du LogBlock herunterlädst solltest du neben den beiden JAR-Dateien folgende Configs vorfinden.

  • config.yml
  • world.yml
  • world_nether.yml

Benenne die Configs world.yml und world_nether.yml in die Namen deiner Welten/Nether um. Wenn du mehr als zwei Welten hast kannst du problemlos den Inhalt einer Config in ein neues Editorfenster kopieren und dieses als YML-Datei speichern.(Am besten Notepad++ nutzen und Einrückungen beachten. außerdem niemals TABs nutzen, sondern die Einrückungen stets nur mit Leerzeichen vornehmen.)


config.yml

loggedWorlds:
- world
- world_nether

Liste hier jede deiner Welten auf, die von LogBlock geloggt werden soll. Nutze dabei die Namen der Weltordner, Groß-/Kleinschreibung beachten!

mysql:
    port: 3306
    host: localhost
    password: pass
    user: username
    database: minecraft

Eine Erklärung zu diesem Abschnitt findest du hier.

logging:
    logCreeperExplosionsAsPlayerWhoTriggeredThese: false
    logKillsLevel: PLAYERS
    hiddenPlayers: []
    hiddenBlocks:
    - 0

logCreeperExplosionsAsPlayerWhoTriggeredThese -> Stellst du dies auf true, so werden Creeperexplosionen unter dem Namen des Spielers geloggt, der den Creeper zur Explosion gebracht hat.
logKillsLevel -> Es gibt drei Killlevel. PLAYERS - LB loggt nur Kills von Spielern an anderen Spielern./ MONSTERS - LB loggt alle Kills von Spielern an monstern und umgekehrt./ ANIMALS - Loggt jeden Kill.
hiddenPlayers -> Hier kannst du Spieler eintragen, die von LB nicht geloggt werden sollen.
hiddenBlocks -> Hier kannst du festlegen welche Blöcke von LogBlock nicht geloggt werden sollen. Wenn du jemals Rollbacks nutzen willst, dann solltest du hier nichts eintragen. 0 (Luft) MUSS eingetragen bleiben.

clearlog:
    dumpDeletedLog: false
    keepLogDays: -1

dumpDeletedLog -> Stellst du dies auf true, so werden von dir gelöschte Logs in einer Art Papierkorb gespeichert, sodass sie nicht sofort verloren sind falls die löschung ein Versehen war.
keepLogDays -> Hier kannst du einstellen wieviele Tage LogBlock Logs speichern soll. -1 steht für unendlich, dein Log wird also niemals gelöscht werden.

questioner:
    askRedos: true
    askClearLogs: true
    askRollbacks: true
    askClearLogAfterRollback: true

Hier kannst du für einige Aktionen einstellen, ob LogBlock nach Eingabe des Befehls sicherheitshalber nochmal um Bestätigung bitten soll ("Are you sure?" - Mögliche Antworten sind Ja (Yes") oder Nein ("No")).

rollback:
    replaceAnyway:
    - 8
    - 9
    - 10
    - 11
    - 51
    dontRollback:
    - 10
    - 11
    - 46
    - 51
    maxTime: 2 days
    maxArea: 50

replaceAnyway -> Hier kannst du einstellen welche Blocktypen bei einem Rollback ersetzt werden sollen. dontRollback -> Hier kannst du einstellen welche Blocktpen bei einem Rollback nicht wiederhergestellt werden sollen.

consumer:
    delayBetweenRuns: 5
    forceToProcessAtLeast: 20
    timePerRun: 200
    useBukkitScheduler: true

Ignoriere diesen Abschnitt am besten.

lookup:
    toolID: 270
    toolQuery: area 0 all sum none limit 15 desc silent
    toolblockID: 7
    toolBlockQuery: area 0 all sum none limit 15 desc silent
    defaultDist: 20
    defaultTime: 30 minutes
    linesPerPage: 15
    linesLimit: 1500

toolID -> Hier kannst du festlegen welches Item von LogBlock als Tool zum nachsehen von BlockChanges genutzt werden soll. toolQuery -> Hier kannst du den Standard-ToolQuery festlegen. (Mehr zum Them Queries findest du im Abschnitt "Parameter" dieses Artikels) blockID -> Hier kannst du festlegen welcher Blocktyp von LogBlock als Tool zum nachsehen von BlockChanges genutzt werden soll. toolBlockQuery -> Hier kannst du den Standard-ToolBlockQuery festlegen. defaultDist -> Standardwert für den Parameter area (Eine Erklärung der Parameter findest du im Abschnitt "Parameter" dieses Artikels) defaultTime -> Standardwert für dem Parameter time linesPerPage -> Limitiert die Anzahl der Zeilen pro Seite von Logs, die LogBlock ausgibt. linesLimit -> Limitiert die Anzahl der Zeilen von Logs, die LogBlock ausgibt.

world.yml

table: lb-main
logBlockCreations: true
logBlockDestroyings: true
logKills: false
logButtonsAndLevers: false
logLeavesDecay: false
logFire: false
logLavaFlow: false
logWaterFlow: false
logChestAccess: false
logExplosions: false
logSignTexts: false
logChat: false
logSnowForm: false
logSnowFade: false

table -> Legt fest wie die Tabelle in der MySQL-Datenbank heißt in der LogBlock die BlockChanges dieser Welt speichert. Achtung: Zwei Welten sollten nicht dieselbe Tabelle nutzen!!
logXYZ -> Legt fest, ob LogBlock Events des Typ XYZ loggen soll, z.B. BlockCreations (Blockerstellungen), BlockDestroyings (Blockzerstörungen), Kills, Knopf und Hebel-Nutzungen, Feuer, Kistenzugriffe,
Explosionen usw., alles ziemlich selbstredend (true steht für aktiviert, false für deaktiviert).

world_nether.yml

Siehe oben (world.yml).

Verwendung

Die folgenden drei Abschnitte erklären die Verwendung von LogBlock. Die Erklärugnen der Parameter, die du für einige Befehle benötigst findest du in der Unterkategorie Parameter.

Permission-Nodes

   logblock.*
   Erlaubt einem Spieler alle Befehle, die mit LogBlock zu tun haben (Vorsichtig verwenden!)
logblock.tool Erlaubt einem Spieler das Logblock-Tool (Standardmäßig die Holzspitzhacke) zu nutzen, um die History von Blöcken nachzusehen.
logblock.toolblock Erlaubt einem Spieler den LogBlock-Toolblock (Standardmäßig Bedrock) zu nutzen, um die History eines Ortes nachzusehen.
logblock.lookup Erlaubt einem Spieler die "/lb lockup"-Befehle zu nutzen.
logblock.rollback Erlaubt einem Spieler Rollbacks durchzuführen. Außerdem kann dieser Spieler den "writelogfile"-Befehl nutzen um eine Logfile mit
den aktuellen Ergebnissen einer "/lb lockup"-Suche auf dem Server zu speichern.
logblock.clearlog Erlaubt einem Spieler den "/lb clearlog"-Befehl zu nutzen, um alle Logs von LogBlock zu löschen.
logblock.hide Erlaubt einem Spieler seine eigenen Änderungen an Blöcken zu verstecken, sodass diese nicht in den Logs auftauchen.
logblock.tp Erlaubt es einem Spieler, sich zur Position eines Blockchanges zu teleportieren.
logblock.me Erlaubt es einem Spieler sich mit "/lb me" seine eigenen Stats anzusehen.
logblock.ignoreRestrictions Erlaubt es einem Spieler die Rollback-Beschränkungen (rollback.maxTime und rollback.maxArea) zu ignorieren.



Befehle

   /lb help
   Zeigt dir die Ingame-Hilfe.
/lb params Zeigt dir eine Liste aller verfügbaren Parameter.
/lb commands Zeigt dir eine Liste aller verfügbaren Befehle.
/lb permissions Zeigt dir welche LogBlock-Permissions du hast.
/lb tool Gibt dir das LogBlock.Tool (Standardmäßig die Holzspitzhacke)
/lb tool [on|off] Stellt den Effekt des LogBlock-Tools an bzw. ab.
/lb tool [Parameter] Bindet einen neuen Query an das LogBlock-Tool. Betrifft nur dich und funktioniert bis zum nächsten Server-Reload/-Restart.
/lb toolblock Gibt dir den LogBlock-Toolblock. (Standardmäßig Bedrock) /lb toolblock [on|off] Stellt den Effekt des LogBlock-Toolblocks an bzw. ab.
/lb toolblock [Parameter] Bindet einen neuen Query an den LogBlock-Toolblock. Betrifft nur dich und funktioniert bis zum nächsten Server-Reload/-Restart.
/lb savequeue Speichert alle Blockchanges sofort in die Datenbank. Nützlich, wenn du einen Waldbrand durch einen Rollback ungeschehen gemacht hast.
/lb lookup [Parameter] oder /lb [Parameter] Zeigt dir das Ergebnis eines Queries.
/lb writelogfile [Parameter] Schreibt das Ergebnis eines Query in eine Logfile im Ordner "minecraftbukkit/plugins/LogBlock/logs". Wenn keine Ergebnisse gefunden wurden, so ist diese Datei leer.
/lb tp [Nummer] Teleportiert dich zum Ort eines der letzten Lookup- oder Rollback-Fehler. Um dich zu teleportieren musst du den Koordinaten-Parameter nutzen, z.B.:
/lb player HansWurst destroyed diamond_ore coords /lb tp 1 /lb tp 2 /lb page 5 /lb tp 62
/lb tp [Parameter] Teleportiert dich zum Ort eines Blockchanges. "/lb tp player HansWurst" teleportiert dich zum Beispiel zum letzten Blockchange des Spielers HansWurst.
/lb rollback [Parameter] oder /lb undo [Parameter] oder /lb rb [Parameter] Macht einen Rollback mit den gewünschten Parametern.
/lb redo [Parameter] Macht einen Rollback rückgängig.
/lb clearlog [Parameter] Löscht den Log. Dies kann nicht rückgängig gemacht werden es sei denn du hast in der Config "dumpDeletedLog" aktiviert. Dadurch wird der Log beim löschen sozusagen im "Papierkorb" gespeichert.
/lb hide Aktiviert den Hidden-Mode. Dadurch werden deine folgenden Aktionen nichtmehr geloggt.


Parameter

Parameter werden in fast allen Befehlen von LogBlock genutzt um Suchparameter zu setzen und so die Suche einzuschränken.

   player [name1] <name2> <name3> ...
   Veranlasst LogBlock nur nach Änderungen eines oder mehrerer Spieler zu suchen. Auch Umwelt-"Spieler" wie "Fire" oder "LavaFlow" werden akzeptiert.
area <radius> Veranlasst LogBlock nur Blockchanges in einem bestimmten Radius um dich herum anzuzeigen. Der Radius gilt für ein Quadrat um deinen Standort. Der Radius 0 steht für einen einzelnen Block. Wenn kein Radius gesetzt ist gilt der Standard-Radius (Config: "lookup.defaultDist").
selection oder sel Veranlasst LogBlock nur Änderungen im Bereich deiner aktuellen WorldEdit-Auswahl anzuzeigen.
block [type1] <type2> <type3> ... oder type [type1] <type2> <type3> ... Veranlasst logBlock nur Änderungen an einem (oder mehreren) bestimmten Blocktyp(en) anzuzeigen.
created oder destroyed Veranlasst LogBlock nur nach gesetzten oder zerstörten Blöcken zu suchen.
chestaccess Veranlasst LogBlock nur Kistenzugriffe anzuzeigen.
since [Zeitfenster] oder time [Zeit(Datum und/oder Uhrzeit] Veranlasst LogBlock nur BlockChanges innerhalb eines bestimmten Zeitfensters vor Ausführung des Befehls anzuzeigen. Die folgenden Syntaxen werden akzeptiert: Accepted syntax’s are:

LogBlock-Zeitfensterformat: 4 minutes, 5 hours, 6 days BigBrother-Zeitfensterformat: 4m5h6d, 5d40m, 7m DateTime-Format: 12:00:00, 22.05.2011, 12:00:00 22.05.2011
(Ist ein Datum ohne weitere Zeit gegeben, so nimmt LogBlock als Zeit 0:00. Ist eine Zeit ohne Datum gegeben, so nimmt logBlock das aktuelle Datum.)
before [Zeitfenster] Veranlasst LogBlock nur BlockChanges anzuzeigen, die älter sind als eine bestimmte Zeit. Nutzt dieselben Parameter wie since (s.o.)
limit [Zahl] Legt fest wieviele Zeilen LogBlock anzeigen soll. (Standardmäßig 15)
sum [none|blocks|players] Veranlasst LogBlock seine Suchergebnisse zusammenzufassen. (none ist Standard, d.h. alle BlockChanges werden einzeln aufgelistet. block bedeutet, dass alle gleichen Blocktypen gruppiert werden und players bedeutet, dass alle BlockChanges eines Spielers gruppiert werden.)
world [Weltname] Legt eine Welt fest. Wird für die Nutzung von Befehlen über die Konsole benötigt. Erlaubt es dir Änderungen in einer anderen Welt als deiner aktuellen nachzusehen.
asc oder desc Ändert die Reihenfolge deines Logs (aufsteigend/absteigend).
coords Zeigt dir in deinem Log die Block-Koordinaten an. (Wirkt nur in Verbindung mit Lookup- oder Writelogfile-Befehlen.)
silent LogBlock stellt keine Rückfragen mehr und alle angezeigten Meldungen werden auf ein Minimum reduziert.
last Steht für alle Parameter deines letzten genutzten Befehls. Es ist möglich zusätzlich noch weitere Parameter zu nutzen oder durch ein einen erneut genutzten Parameter einen Wert aus dem vorherigen Befehl zu überschreiben.


Beispielbefehle:
/lb player HansWurst Zeigt alle BlockChanges von HansWurst. /lb last area Zeigt alle BlockChanges von HansWurst innerhalb der Standardradius. /lb rollback last Macht alle Blockchanges von HansWurst innerhalb des Standardradius rückgängig.
/lb rollback player Oskar since 6d5h4m20s created area 50 Macht alle Blockerstellungen des Spielers Oskar im Radius von 50 Blöcken um dich herum, die innerhalb der letzten 6 Tage 5 Stunden 4 Minuten und 20 Sekunden getätigt wurden rückgängig.

Links

  • Entwickler-Thread im Bukkitforum
  • Die drei Logging-Plugins LogBlock, BigBrother und HawkEye fusionieren momenten zu einem neuen Plugin (derzeitiger Name Guardian). Die Entwicklung dieser Fusionierung kannst du hier verfolgen.


Über diesen Artikel

Dieses Tutorial basiert auf der Plugin-Version unbekannt
Dieses Tutorial wurde erstellt durch: Phiwa Dieses Tutorial wurde erstellt am: 28.08.2011
Zuletzt bearbeitet durch: StClaus Letzte Aktualisierung am: 12.09.2011