4.0.3 — poprawki: zgony przy problemach z siecią, czat z panelu WWW#
- Zgony i selfkille nie giną już po chwilowym błędzie sieci. Gdy wysyłka statystyk do sieci się nie udała i była ponawiana, część zgonów z tego okna mogła przepaść — w profilu zostawała stara „ostatnia śmierć” (np. „zabił cię Jeleń” mimo późniejszego selfkilla). Teraz ponowienie wysyła dokładnie te same dane, a nowe czekają na kolejną wysyłkę. Statystyk utraconych wcześniej nie da się odzyskać.
- Wiadomości z czatu panelu WWW pluginu widać na stronie serwera w sieci — z oznaczeniem [WEB]. Wymaga aktualizacji pluginu.
4.0.2 — zwierzęta z Big Update#
- Nowe zwierzęta w statystykach: owca, jagnię, krowa, byk, cielę, krab, żaba, meduza, żółw morski i wiewiórka. Liczą się do kolumny Zwierzęta, dają XP za zabicie zwierzęcia i mają własne liczniki w rankingu globalnym oraz w profilu gracza (zakładka PVE). Wcześniej sieć pokazywała je jako „Inne zwierzę”.
- Kolejne nowe zwierzęta nie przepadną. Zwierzęta z nowej generacji AI Rusta są rozpoznawane automatycznie, także te, których plugin jeszcze nie zna z nazwy. NPC, którego plugin nie rozpozna, jest wysyłany do sieci z nazwą z gry — administracja sieci przypisze go do właściwego gatunku, a statystyki graczy zostaną zachowane.
- Pop-up zabójstwa pokazuje nazwę gatunku (np. „Sheep”) zamiast ogólnego „Zwierzę”.
- Zgon od nowego zwierzęcia ma przyczynę = gatunek (np. byk), a nie rodzaj obrażeń.
- Katapulta nie jest już liczona jako zwierzę.
mtopcore.mapdiag pokazuje przy każdym gatunku, jak jest liczony.
4.0.1 — poprawki: pojazdy, XP za jazdę, przyczyny zgonów, panel WWW#
- Zgon od pojazdu („killed by minicopter.entity") trafia teraz do statystyk jako konkretny pojazd: minikopter, scrap heli, samochód, łódź, RHIB, motor, rower, koń, balon, skuter śnieżny, łódź podwodna, holownik, pociąg.
- Nowe przyczyny zamiast pustego wpisu: uderzenie tępym narzędziem (Blunt), zderzenie, cięcie, pchnięcie, ugryzienie, głód, pragnienie, strzała, pocisk, wychłodzenie.
- Czas jazdy pociągiem (lokomotywa, workcart, wagony) jest teraz liczony — wcześniej pociągi nie trafiały do statystyk pojazdów.
- Holownik liczył się jako zwykła łódź — teraz ma własną statystykę. Doliczane są też: trike (jako rower), PT Boat, łódź modułowa i kajak (jako łódź).
- XP za jazdę pojazdem z banerem. Progi ustawia Master (np. 30 min minikopterem = 5 XP). Czas jazdy danym pojazdem sumuje się ze wszystkich serwerów sieci: przy wejściu gracza plugin pobiera z Mastera jego łączny czas, dolicza jazdę na swoim serwerze i pokazuje baner „+XP” dokładnie wtedy, gdy łączny czas przekroczy próg (10 min na jednym serwerze + 20 min na drugim = 30 min). Master liczy XP z tej samej sumy, więc nic się nie rozjeżdża. Działa na serwerach zweryfikowanych.
- Ładne nazwy pojazdów w pop-upie zabójstwa — rozjechany naukowiec pokazuje „Samochód”, „Minikopter” itd. zamiast roboczej nazwy prefabu. Master dostaje ten sam klucz pojazdu.
NET - Web panel URL działa z samą domeną (np. rust.koldrix.com za Nginx Proxy Managerem) — plugin dopisuje https://. Wcześniej taki adres był odrzucany, a link „Panel WWW” na stronie prowadził na IP:port sprzed proxy (404).
- Usunięty klucz
INFO - Integrate with MajestatTopCore (if present) — plugin jest jedną całością, panel INFO jest zawsze zintegrowany. Stary klucz zniknie z configu sam.
- Zgon, którego nie da się rozpoznać, jest zapisywany jako „Nieznana przyczyna" — w panelu nie ma już samych kresek.
- Statystyki zbieranego jedzenia (
gather.food.* — jagody, nasiona, chleb, słoiki…) są przyjmowane przez Mastera i zapisywane. Widok na stronie pojawi się w jednej z kolejnych aktualizacji.
4.0.0 RC1 — pierwsze wydanie produkcyjne#
Pierwsze publiczne wydanie MajestatTopCore. Cały system — statystyki, rankingi, panel WWW, mapa, głosowanie na mapę, panel INFO i sieć globalna — to teraz jeden plik MajestatTopCore.cs i jeden config MajestatTopCore.json. Kolejne poprawki będą wychodzić jako 4.0.x.
Przejście ze starszych wersji#
- Usuń stare, osobne pliki:
MajestatStats.cs, MajestatTopBuild.cs, MajestatTopGather.cs, MajestatTopLoot.cs, MajestatTopWeb.cs, MajestatTopMap.cs, MajestatTopVote.cs, MajestatTopInfo.cs, MajestatTopNet.cs — inaczej zdublują zakładki i komendy.
- Przy pierwszym starcie powstanie nowy
MajestatTopCore.json. Przenieś do niego swoje ustawienia ze starych configów (dane MySQL, VOTE - RustMaps API Key, NET - Token, zakładki INFO - Tabs).
- Uprawnienia zmieniły nazwy:
majestattopcore.voteadmin, majestattopcore.info, majestattopcore.infoadmin (dawne majestattopvote.admin, majestattopinfo.use, majestattopinfo.admin nie działały na Oxide). Uprawnienia nadane pod starymi nazwami nadaj ponownie.
- Jeden język dla całego pluginu: nowy klucz
Language (pl/en) zastępuje WEB - Language…, VOTE - Language i NET - Language (pl/en). Wartość przenosi się sama, stare klucze znikają z pliku.
- Klucze tekstów pop-upu zabójstwa zmieniły nazwy na
PopupHitsLbl, PopupHeadshotsLbl, PopupDistanceLbl. Jeśli miałeś własne tłumaczenia tych trzech wierszy, wpisz je ponownie pod nowymi kluczami.
Nowe i zmienione#
- Głosowanie z konsoli / RCON:
mtopcore.vote status | open | close | restart | reroll — pełne zarządzanie głosowaniem bez wchodzenia do gry. /voteadmin ma te same akcje (doszły status i restart), a open nie nadpisuje już trwającego głosowania.
- Pop-up zabójstwa: dwie wyśrodkowane, pogrubione linie („Zabiłeś …” / „z …”), jednolite etykiety „Trafienia / Headshoty / Dystans”, mniej miejsca na ekranie.
- Porządek w configu: klucze są zapisywane w stałej kolejności (baza → język → NET → CORE → WEB → VOTE → INFO), a dokumentacja opisuje też klucze wcześniej pominięte (
Points Per Headshot…, Show pop-up kills, Kill pop-up…, VOTE - Close Before Wipe (minutes), VOTE - Save Map Images To Disk).
- Lżejszy plik: do pobrania jest wersja produkcyjna — bez komentarzy, mniejsza i szybciej kompilowana przez Oxide/Carbon.
- Ikony komunikatów:
NET - Icon SteamID, VOTE - Icon SteamID, INFO - Icon SteamID ustawiane jednolicie (0 = domyślna ikona Rust).
- Domyślne progi XP:
Gather.HQM 500 → 200, Gather.Scrap 5000 → 2000 (tylko nowe configi — istniejące wartości zostają).
- Klucze configu, które teraz działają:
Show Play Time Column, WEB - Chat Web prefix in game (+ kolor), WEB - Map update interval (seconds).
- Usunięte klucze, które nic nie robiły:
WEB - Global PVP page URL, WEB - Map Show sleeping players for admin, WEB - Map Mini-chat height (px), VOTE - Log Level — znikną z pliku same.
- Czytelne logi przy braku połączenia z siecią: jedna linia z przyczyną (np. problem z certyfikatem, DNS, timeout) zamiast pełnego stack trace co minutę.
Poprawki#
- Na Oxide w panelu /top i w pop-upie zamiast napisów pojawiały się klucze tekstów (
ColRank, TabFame…). Pliki lang uzupełnią się same przy pierwszym starcie; własne tłumaczenia zostają.
/topinfo reload i /broadcast działają dla adminów w grze; INFO - Require permission = true nie blokuje już panelu Info wszystkim.
/api/map/vending zwraca oferty sklepów (wcześniej zawsze pustą listę).
/player/<id> i /api/player/<id> zwracają 404 dla nieznanego SteamID zamiast błędu.
- Wersja w konsoli i w stopce panelu WWW odpowiada faktycznej wersji pluginu.
- Przycisk „Powrót do TOP” w panelu głosowania ukrywa się, gdy
Enable Panel = false.
Wydajność#
- Tryb JSON zapisuje dane graczy raz na cykl autozapisu zamiast przy każdej zmianie.
- Mapa na żywo przegląda encje serwera jednym przejściem i tylko przy włączonym module WEB.
- Ranking nie jest przeliczany przy każdym uderzeniu w drzewo — odświeża się co
Leaderboard Cache TTL (domyślnie 30 s).
- Lista policzonych skrzyń nie rośnie już przez cały wipe.