// Minecraft

CoreProtect: jak cofnąć grief i sprawdzić, kto co zrobił

CoreProtect: jak cofnąć grief i sprawdzić, kto co zrobił

CoreProtect zapisuje każdą zmianę bloku, każdy ruch w kontenerze i każdą interakcję razem z nickiem gracza, godziną i współrzędnymi, więc po fakcie widzisz, kto co zrobił, i cofasz to jedną komendą. Komendą /co i włączasz tryb inspekcji i klikasz w blok, żeby odczytać jego historię, a komendą /co rollback u:Gracz t:2d r:20 cofasz to, co ten gracz zrobił przez ostatnie dwa dni w promieniu dwudziestu bloków od ciebie. To nie zastępuje kopii zapasowej: CoreProtect cofa działania gracza, a kopia zapasowa przywraca świat do konkretnego momentu w czasie. Chcesz mieć jedno i drugie.

Co właściwie zapisuje CoreProtect?

CoreProtect to plugin działający po stronie serwera, na Paper, Purpur albo Spigot. Gracze nie muszą niczego instalować u siebie. Należy do podstawowych pluginów, które spotkasz praktycznie na każdym poważnym serwerze, obok EssentialsX, LuckPerms i WorldGuard.

To, co trafia do logu, jest szersze niż same bloki:

  • Stawianie i niszczenie bloków, łącznie z tym, co przesunęła eksplozja, ogień albo tłok
  • Kontenery: kto jakie przedmioty wyjął ze skrzyni, pieca czy leja albo do nich włożył
  • Interakcje: drzwi, klapy, przyciski, płyty naciskowe i otwieranie kontenerów
  • Czat, wykonane komendy i sesje: kto i kiedy się logował oraz wylogowywał
  • Zabite byty, takie jak stojaki na zbroję, ramki na przedmioty i oswojone zwierzęta

Co najmniej równie ważne jest to, czego nie zapisuje: ekwipunku noszonego przez gracza, punktów doświadczenia, osiągnięć ani danych, które inne pluginy prowadzą po swojemu, jak saldo ekonomii czy zaklepana działka. Niczemu też nie zapobiega — to kamera, a nie zamek: jeśli chcesz uprzedzić grief, potrzebujesz WorldGuard albo GriefPrevention.

Jak działa tryb inspekcji?

Tryb inspekcji służy do zbadania zgłoszenia bez zmieniania czegokolwiek: włączasz go, klikasz dookoła w miejscu szkody i czytasz na czacie, kto tędy przechodził.

  1. Wpisz /co i (albo pełne /co inspect). Na czacie dostaniesz potwierdzenie.
  2. Kliknij lewym przyciskiem w blok, który wciąż stoi: zobaczysz, kto go postawił albo kto usunął poprzedni blok i jak dawno temu.
  3. Kliknij lewym przyciskiem w miejsce, z którego coś zniknęło: odczytasz historię dokładnie tej pozycji.
  4. Kliknij prawym przyciskiem w blok: dostaniesz historię przestrzeni obok niego.
  5. Kliknij prawym przyciskiem w skrzynię, piec albo lej: dostaniesz log kontenera, linia po linii, z plusem lub minusem przy każdym przedmiocie.
  6. Wpisz /co i ponownie, żeby wyłączyć tryb. Dopóki jest włączony, niczego nie zniszczysz ani nie postawisz.

Poza klikaniem masz dwie komendy wyszukiwania. /co near pokazuje, co niedawno działo się w niewielkim promieniu wokół ciebie — idealne, gdy ktoś krzyczy, że coś zniknęło. /co lookup u:Nick t:1d r:10 przeszukuje log po graczu, czasie i promieniu, a komendą /co l 2 przechodzisz na kolejną stronę. Rób to zawsze przed rollbackiem, bo zapytanie, które tu zbudujesz, to dokładnie ten sam rollback, który za chwilę wykonasz.

Jak cofnąć grief komendą /co rollback?

Rollback korzysta z tych samych parametrów co lookup: cofa się dokładnie to, co pokazałoby wyszukiwanie. Dlatego najpierw szukasz — wtedy widzisz, ilu wpisów dotkniesz.

ParametrCo robi
u:GraczOgranicza wynik do jednego gracza. Kilku podajesz po przecinku: u:Steve,Alex
t:2dJak daleko wstecz w czasie. Można łączyć: t:1d6h
r:20Promień w blokach wokół ciebie. Bez r: obowiązuje domyślny promień z konfiguracji
a:blockTylko zmiany bloków. Popularne są też: a:container, a:click, a:kill, a:chat, a:command, a:session
b: i e:Filtrowanie po blokach albo ich wykluczanie: b:diamond_ore, e:stone
#previewPokazuje wynik tylko tobie, bez zmieniania świata

Kolejność jest zawsze taka sama. Najpierw szukaj komendą /co l u:Griefer t:6h r:50, w razie potrzeby obejrzyj wynik, dopisując na końcu #preview, a potem wykonaj tę samą linijkę jako rollback. Na koniec przejdź się po terenie i sprawdź, czy nic nie zostało.

Nigdy nie cofaj wyłącznie po promieniu, jeśli znasz sprawcę: /co rollback t:6h r:50 bez u: usunie również to, co inni gracze legalnie tam zbudowali w tych samych sześciu godzinach, a dowiesz się o tym dopiero, gdy ktoś się poskarży.

Rollback czy restore: jaka jest różnica?

Rollback cofa zarejestrowane działania. Restore wykonuje te same działania jeszcze raz. Restore nie jest więc przyciskiem do odtwarzania świata, tylko przyciskiem cofania twojego własnego rollbacku.

Konkretnie: jeśli gracz przez trzy godziny rozwalał osiedle, to /co rollback u:Gracz t:3h r:40 usuwa tę rozbiórkę i domy znów stoją. Jeśli po fakcie okaże się, że filtr był zbyt szeroki i połowa wyburzeń była legalna, to /co restore u:Gracz t:3h r:40 przywraca sytuację sprzed twojej ingerencji. Warunek jest jeden: musisz użyć tych samych filtrów. Cofniesz z t:3h, a przywrócisz z t:6h — ruszysz więcej, niż zamierzałeś.

Ile logowania naprawdę potrzebujesz?

Tu serwery z CoreProtectem rozjeżdżają się najbardziej. Domyślnie plugin zapisuje bardzo dużo: każdy przepływ wody, każdy rozkładający się liść i każde wyrosłe drzewo to osobny wpis, przez co na ruchliwym serwerze survivalowym baza danych rośnie w oczach. Pożytek z tego bywa niewielki, bo przy griefie patrzysz na to, kto coś postawił albo zniszczył.

Przejdź więc raz przez plik plugins/CoreProtect/config.yml i wyłącz to, czego nigdy nie sprawdzasz. leaf-decay, tree-growth i liquid-tracking to bezpieczni kandydaci, a na części serwerów także hopper-transactions, bo ta pozycja mocno puchnie, gdy gracze budują duże systemy sortujące. Włączone zostawiasz stawianie i niszczenie bloków, transakcje w kontenerach, eksplozje i sesje. To pokrywa praktycznie każdą sprawę o grief.

Purge: jak utrzymać bazę danych w ryzach?

Druga połowa to sprzątanie. Komendą /co purge t:30d wyrzucasz wszystko starsze niż trzydzieści dni. Dla większości serwerów to sensowna granica: grief prawie zawsze zgłaszany jest w ciągu kilku dni, a tego, czego przez miesiąc nikt nie zauważył, i tak już nie cofniesz. Na małym projekcie z białą listą możesz pozwolić sobie na więcej.

Zaplanuj purge poza godzinami szczytu: przechodzi przez całą tabelę, trochę trwa i chwilowo potrzebuje dodatkowego miejsca na dysku. Nowsze wersje potrafią robić to cyklicznie same, więc najpierw zajrzyj do swojego config.yml. CoreProtect działa domyślnie na SQLite, co przy jednym serwerze sprawdza się bez zarzutu; MySQL jest ciekawy głównie przy kilku serwerach w jednej sieci. Najwięcej daje szybki nośnik, bo na NVMe samego logowania praktycznie nie czuć. Więcej na ten temat w naszym artykule o optymalizacji serwera Minecraft.

Dlaczego CoreProtect to nie kopia zapasowa?

To nieporozumienie regularnie kosztuje ludzi całe światy. CoreProtect zna tylko to, co sam zobaczył: działania graczy ze znacznikiem czasu. Kopia zapasowa zna cały folder świata w takiej postaci, w jakiej w danej chwili leżał na dysku. Dwa narzędzia do dwóch rodzajów kłopotów.

PytanieRollback w CoreProtectPrzywrócenie kopii zapasowej
Co przywracaDziałania jednego lub kilku graczy, z filtrem czasu i obszaruCały świat z jednego momentu
Czy dotyka innychNie, jeśli filtrujesz po u:Tak, wszystko z okresu po tym momencie przepada
Dobre naGrief, kradzież ze skrzyń, wpadkę administratoraUszkodzone chunki, nieudaną aktualizację, skasowane pliki
Czy trzeba wyłączyć serwerNieZwykle na chwilę tak
Nie zadziała przyUszkodzonych plikach świata albo zepsutych danych pluginówCofaniu jednego gracza bez ruszania reszty

Jeśli świat uszkodzi się po zmianie wersji, CoreProtect nie ma czego cofać. I na odwrót: jeśli przywrócisz wczorajszą kopię zapasową, bo jeden gracz rozwalił wieżę, wszyscy pozostali też stracą wieczór pracy. Dlatego powinieneś mieć jedno i drugie. Automatyczne kopie zapasowe są w standardzie w hostingu Minecraft od MC-Node, razem z nośnikami NVMe i panelem Pterodactyl.

Kiedy CoreProtect nie jest ci potrzebny?

Na czystym serwerze NeoForge, Forge albo Fabric po prostu nie zadziała. Pluginy opierają się na Bukkit i chodzą wyłącznie na Paper, Purpur lub Spigot; modpack taki jak All the Mods 10 działa na NeoForge z Minecraft 1.21.1 i nie wczyta ani jednego pluginu. Jeśli grasz w taki modpack, opierasz się na kopiach zapasowych i na tym, co sam modpack daje w kwestii ochrony. O tym, jak zbudowane są takie światy, przeczytasz w naszym wyjaśnieniu, czym są modpacki i jak się je instaluje.

Na zamkniętym serwerze z piątką ufających sobie znajomych zysk jest niewielki; plugin kosztuje cię wtedy głównie miejsce na dysku. Mimo to większość administratorów i tak go instaluje: jeśli nie był włączony w momencie, w którym go potrzebujesz, nie ma czego badać. Włączenie go po fakcie nic nie da.

Najczęściej zadawane pytania

Czy da się cofnąć rollback? Tak. Wykonaj /co restore z dokładnie tymi samymi parametrami co rollback, czyli tym samym u:, t: i r:. Jeśli zmienisz czas albo promień, przywrócisz więcej lub mniej, niż cofnąłeś. Duże operacje testuj najpierw z #preview.

Jak daleko wstecz sięga CoreProtect? Dokładnie tak daleko, jak sięga twoja baza danych. Jeśli co miesiąc czyścisz ją komendą /co purge t:30d, cofniesz się maksymalnie o trzydzieści dni. Kto chce zaglądać dalej, czyści rzadziej i godzi się na większe zużycie dysku, bo baza rośnie razem z aktywnością na serwerze.

Czy CoreProtect spowalnia serwer? W normalnym użyciu prawie wcale: logowanie idzie w tle, a obciążenie trafia głównie na nośnik, gdzie różnicę robi NVMe. Odczujesz za to duże rollbacki i purge, więc te odpalaj poza godzinami szczytu.

Czy CoreProtect działa na serwerze z modpackiem? Nie na serwerze postawionym na samym NeoForge, Forge czy Fabric. All the Mods 10 działa na NeoForge z Minecraft 1.21.1 i Java 21, a serwer NeoForge nie wczytuje pluginów Bukkit. Jeśli chcesz CoreProtect, potrzebujesz Paper albo Purpur, a to oznacza, że nie odpalisz modów z nową zawartością.

Czy rollback przywraca też skradzione przedmioty? Tak, zawartość kontenerów wraca, dopóki zapisywanie transakcji w kontenerach jest włączone. Komendą /co rollback u:Zlodziej t:12h r:10 a:container ruszasz wyłącznie skrzynie i piece. To, co złodziej ma w tym momencie we własnym ekwipunku, zostaje poza zasięgiem: ekwipunków graczy CoreProtect nie zapisuje.

Warto przeczytać

// WYPRÓBUJ SAM
Twój serwer online w 60 sekund
MC-Node →