Devblog 118

Rust airfield

Zmiany w systemie XP oznaczają, że oficjalne serwery będą czyścić XP i mapy, żeby wszyscy byli na tym samym poziomie. Serwery społeczności mogą to cofnąć, jeśli chcą. Wybaczcie, ale musieliśmy to zrobić. Oprócz spraw związanych z XP, przerabiamy strzelanie, budujemy ładniejsze lotniska, i więcej.

 

 

 

Zmiany XP + Poprawki Maurino Berry

Mieliśmy bardzo, bardzo zły błąd w kodzie, gdy wprowadzony został system XP. 100% XP było dodawane każdemu właścicielowi, procent własności nie miał znaczenia. To znaczyło, że nawet, jeśli posiadało się <1% narzędzie, i tak dostawało się 100%  XP. To doprowadziło do nieprawdopodobnych ilości XP zdobywanych przez niektórych graczy. Coś w rodzaju poziomu na minutę. Zostało to na szczęście naprawione, dzięki André. Wprowadziliśmy też poniższe zmiany do systemu zdobywania XP:

  • Maksymalne XP, które można uzyskać od gracza jest ograniczone do 6XP
  • Koniec zdobywania XP za korzystanie z surowców
  • Za każdym razem, gdy stworzy się przedmiot po raz pierwszy, dostaje się 0.5XP
  • Zmniejszenie zdobywania XP: im więcej razy wykonywana jest ta sama akcja, tym mniej daje XP

Te zmiany głównie odbiją się na grupach, które się nawzajem boostują. Wasi koledzy mogą pójść i zbierać ile chcą dla Ciebie, ale zdobyte punkty XP będą się zmniejszać, aż dojdą do maksimum. Lepiej jest spotykać innych graczy, ponieważ pierwsze punkty XP zdobyte dla was przez gracza przyjdą szybko.

Wipe’owy Hype Maurino Berry

Z powodu sposobów wykorzystania błędów, błędów i niedopatrzeń, niektórzy gracze zdobywali poziom 50+ w ciągu kilku godzin, odblokowując cały sprzęt i biegając na serwerze z C4 i Ak47. Ponieważ poprawiliśmy wszystkie błędy i osłabiliśmy zdobywanie XP, jakikolwiek “regularny” gracz, albo ktoś po prostu wchodzący na serwer musiałby się z tym zmierzyć, co jest według nas nieuczciwe. Ponadto, nie jesteśmy w stanie określić szybkości zdobywania XP i poziomów, więc nie możemy wprowadzić żadnych poprawek w przyszłości, opierając się na tym cyklu XP. Z powodu tych problemów, zdecydowaliśmy się przeprowadzić wipe i zacząć od nowa. Zawiera to też wipe mapy, żeby usunąć stosy AK47 i innych przedmiotów, które dałyby nieuczciwą przewagę nad nowymi graczami.

Wiem, że jest to beznadziejne i naprawdę przepraszam, ale musieliśmy to zrobić, dla dobra gdy i dla jej ulepszenia. Chciałbym, żeby wszyscy zdawali sobie sprawę, że nie jest to w żadnym wypadku standardowa procedura, oraz że nigdy nie zamierzaliśmy czyścić XP częściej niż blueprinty. Prosimy o zrozumienie, że nie miało się to zdarzyć w ciągu kilku najbliższych miesięcy, mówiłem tak na reddicie, Chciałbym poszerzyć moje szczere przeprosiny dla was wszystkich. Takie rzeczy zdarzają się od czasu do czasu, jest to część powodu, dlaczego nadal mamy znaczek Early Access na grze, ale zrobimy co w naszej mocy, żeby w przyszłości nie doprowadzić do żadnych sytuacji tego typu.

To powiedziawszy, dodaliśmy właścicielom serwerów sposób na wczytanie kopii zapasowej i odzyskania ich bazy danych XP, w celu efektywnego pominięcia wyczyszczenia XP takiego jak to.

Właściciele serwerów mogą aktualizować swoje serwery, a następnie wykonać poniższe czynności, żeby odzyskać bazę danych XP i plik zapisu w folderze serwera:

  • Zmień nazwę “xp3.db” nato “xp4.db”
  • Zmień nazwę “UserPersistence.db” na “user4.db”
  • Zmień nazwę “0.sav” w folderze “save/Procedural Map_3000_1234” na “proceduralmap.3000.1234.132.sav” i przenieś go do folderu serwera, żeby był obok plików “xp4.db” i “user4.db”

Rust files

Zwróćcie uwagę na to, że w tym przykładzie 3000 to rozmiar świata, a 1234 to seed świata. Numer 132 jest naszym obecnym wewnętrznym protokołem zapisu, który jest taki sam po aktualizacji.

Co dalej z XP? Maurino Berry

W przyszłym tygodniu chciałbym dodać możliwość ustawiania mnożników XP na graczach. Gdy zostanie to wprowadzone, będziemy mogli robić od czasu do czasu rzeczy takie jak weekendy z podwójnym XP, albo dodać funkcjonalność, który daje graczowi bonusowy mnożnik XP, jeśli był przez długi czas offline (dając każualom trochę pomocy przeciwko no-lifom). Będziemy też mogli limitować XP zdobywane podczas bycia offline, jeśli będzie to problemem. Będziemy obserwować, balansować, wprowadzać zmiany do drzewka technologii i dodawać nowe sposoby zdobywania XP. Musimy też zacząć zajmować się nad czymś, co pozwoli wam porzucić całe XP dla porządnego bonusu, pozwalając wam grać od nowa (coś takiego jak prestiż w Call of Duty), zmniejszając potrzebę czyszczenia XP.

Kontynuacja Pracy Nad Lotniskami Vincent Mayeur

Po pierwszym wprowadzeniu lotniska w zeszłym tygodniu, zacząłem zajmować się ulepszaniem i wykańczaniem tego obszaru. Mogę popracować nad tym dalej w przyszłości, ale teraz i tak jest o wiele lepiej. Mam na myśli przerobienie modeli hangarów sprzed dwóch lat, które nie były takiej jakości, jakiej chciałem. Tak wyglądają nowe:

Rust airfieldRust airfield

Po tym dodam minielektrownię do lotniska, w sekcji z ceglanym murem, która jest pusta. Ta podstacja będzie w przyszłości połączona z proceduralnie generowanymi liniami wysokiego napięcia i będzie ładnym wykończeniem, zamiast bycia chamskim stopem.

Wydajność Serwera Garry Newman

Mamy specjalny serwer, na którym przeprowadzaliśmy wszelkie testy, wydajność była bardzo dobra. Kiedy wypuściliśmy aktualizację zorientowaliśmy się, że wydajność serwera była do dupy. Bardzo do dupy. Po krótkim dociekaniu dowiedzieliśmy się, że serwery nie robiły nic, gdy zapisywały dane XP do bazy danych na dysku. Nie zauważyliśmy tego na serwerze testowym, ponieważ ma on bardzo szybkie dyski twarde, ale większość serwerów nie ma takich dysków, bo ogólnie ich nie potrzebują.

Wprowadziłem sporo zmian, optymalizacji i jak na razie wszystko działa w porządku. Żeby nie wydarzyło się to jeszcze raz, mamy kilka serwerów testowych działających na regularnym sprzęcie.

Wydajność Sieci Garry Newman

Serwery wykorzystywały sporo transferu, więc dodałem kilka narzędzi do diagnostyki i testów oraz zoptymalizowałem je. Jeśli macie wolne łącze, to powinniście zauważyć poprawę. Jeśli jesteście właścicielem serwera, powinniście dostrzec mniejsze zużycie transferu.

Przerobienie Strzelania André Straubmeier

Nowe systemy strzelania własnie weszły. Strzelanie było jednym z największych problemów społeczności od dłuższego czasu i wydaje się nam, że w końcu jesteśmy na dobrej drodze. Wytłumaczyłem większość w devblogu 117, ale tutaj macie podsumowanie:

  • Nowy system hitbox (ubrania już nie wpływają na hitbox)
  • Nowy model obrażeń broni (bardziej przewidywalne mnożniki obrażeń)
  • Nowe wykrywanie trafienia pociskiem
  • Nowy system ochrony ubrań i pancerza (mniej losowe właściwości chroniące)

Celem tych wszystkich zmian było sprawienie, żeby strzelanie było bardziej precyzyjne i przewidywalne. Mimo, że na pewno nie jest ono jeszcze perfekcyjne, powinien być to duży krok w dobrym kierunku i powinno dać to nam różne narzędzia, które można wykorzystać do ulepszenia systemu w przyszłości.

Blokowanie Budowania André Straubmeier

Ten problem mieliśmy już od bardzo dawna. W rzadkich przypadkach ludzie mieli blokadę budowania na całej mapie, dopóki nie zginęli i nie zrespawnowali się. Nigdy nie byliśmy w stanie porządnie tego odtworzyć, więc trudno było to wykryć, ale w końcu powinno być to naprawione – dajcie nam znać, jeśli nadal macie taki problem.

Poprawki Sposobów Wykorzystania Błędów André Straubmeier

Idąc dalej z moją walką z oszukiwaniem i wykorzystywaniem błędów, zająłem się w tym tygodniu kilkoma od dawna istniejącymi problemami. Naprawiłem sposób wykorzystania błędu projektu budynku, który sprawiał, że zewnętrzne ściany wieży były niewrażliwe na obrażenia od rakiet. Następnie znalazłem kolejny sposób wykorzystania błędu, który pozwalał stawiać przedmioty przez skały i pozwalał ludziom tworzyć bazy w skałach. Na koniec naprawiłem sposób wykorzystania błędu helikoptera, który sprawiał, że okna naokoło nowych pomników były niemalże niewrażliwe na obrażenia od karabinów maszynowych helikoptera.

Poprawki Anty-Hack André Straubmeier

Natrafiłem w tym tygodniu na kilka fałszywych alarmów od naszego wewnętrznego systemu anty-hack, każdy z nich mógł doprowadzić do anulowania prawidłowo wystrzelonych przez klientów naboi. Jeden z nich był spowodowany kodem z legacy, który powinien być już dawno usunięty – to on wyświetlał wiadomość “AntiHack!” na czacie – drugi był spowodowany tym, że weryfikacja szybkości pocisków była w niektórych przypadkach zbyt surowa. Wszystko powinno być już naprawione.

Wymuszanie Server Branch André Straubmeier

Serwery mogą od teraz ustawić parametr startowy “server.branch”, który zmusi wszystkich klientów próbujących się połączyć do połączenia się z określoną gałęzią Rust na systemie Steam. Korzystamy z tego, żeby powstrzymać nowych graczy przed połączeniem się z oficjalnymi serwerami testowymi, co skutkowałoby brakiem możliwości połączenia, gdy zmienimy protokół sieciowy, lub żeby użytkownicy nie mieli problemów z połączeniem, gdy restartują, wipe’ują częściej niż jest to oczekiwane.

Przeróbka Pancerza Kościanego Taylor Reynolds

Prace dalej trwają nad przeróbką pancerza kościanego. Pracowałem trochę więcej nad detalami, dodawałem sporo pasków, połączeń i małych kości. Staram się sprawić, żeby wyglądał autentycznie. Są to małe detale, ale myślę że są one ważne, wydaje mi się że sprawiają, że kościany pancerz wydaje się trochę nijaki.

Rust bone armor

Więcej Opcji Anty-Aliasingu Diogo Teixeira

W tym tygodniu wprowadziliśmy kilka nowych opcji anty-aliasingu. Mieliśmy tylko dwie opcje, włączony bądź wyłączony. Kiedy był włączony, korzystał z naszej domyślnej implementacji, która była oparta na SMMA (subpixel morphological antialiasing), który jest rozrosły, ale też trochę wolny. Od teraz istnieją dwie dodatkowe opcje: niskiej jakości FXAA, czyli fast approximate anti-aliasing, 0raz średniej jakości TSSAA aka temporal supersampling anti-aliasing. Skombinowane, powinny sprawić, że korzystanie z anty-aliasingu będzie się opłacało na każdym sprzęcie.

Rust anti-aliasing

Wyższej rozdzielczości porównanie dla bardziej szczegółowej analizy:

Rust anti-aliasing

Weźcie proszę pod uwagę to, że TSSAA jest nadal pracą w toku. Możecie uważać, że efekty będą trochę rozmazane, szczególnie w ruchu. Jest oparte na implementacji Unity i na pewno z czasem będzie lepsze. Jeśli widzicie czarny muł poszerzający się na ekranie, aż będzie on ciemny, nie panikujcie, po prostu wyłączcie TSSAA. Jest to znany problem i powinien być usunięty w ciągu najbliższych kilku tygodni.

Wydajność Grafiki Diogo Teixeira

W ciągu ostatnich kilku miesięcy Andre wykonał dobrą robotę w celu ulepszenia draw call batchingu i musimy pochwalić jego pracę patrząc na runtime shader, przepustowość pamięci tekstur, opóźnienie i zasięg. W tym tygodniu zacząłem obserwować wydajność od góry do dołu, oraz zajmować się nią. Zdefiniowałem już kilka zatorów oprócz tych, o których już wiedzieliśmy. Pierwsza zmiana, którą wprowadziłem to niewielka redukcja w arytmetycznych obliczeniach w obliczeniach oświetlenia shaderów. Jest to mała zmiana, potrzeba więcej takich, żeby zobaczyć różnicę.

Będę celował w solidne 60 FPS na 1080p przy karcie NVIDIA GTX 960 (i innych porównywalnych kartach innych dystrybutorów), zakładając że CPU nie jest zatorem, równocześnie zachowując estetyczne efekty wizualne. Prawdopodobnie skończymy na kombinacji optymalizacji i zmian domyślnych ustawień. Jest przed nami mnóstwo roboty, która powinna rozciągnąć się na kilka tygodni. Będę dawał wam znać jak nam idzie.

Aktualizacja Animacji Kuszy Alex Webster

Pierwsza rzecz, nad którą pracowałem w tym tygodniu nie udała się, więc po niej zająłem się naprawianiem problemów z kuszą, które mieliśmy już od dawna. Między innymi:

  • Nieprawidłowa animacja wyjmowania kuszy
  • Ścinanie z nadgarstkiem, z powodu zbyt mocnego przekręcenia podczas animacji przeładowania
  • Długość animacji nie pasująca do czasu przeładowania, powodująca przecinanie się podczas korzystania z celownika
  • Idle loop bumps
  • Trzęsienie się modelu i kuszy pod koniec przeładowania
  • Niesatysfakcjonująca animacja wystrzału

Kolba Strzelby Tom Butters

Skończyłem LODy i tekstury. Chciałem trochę różnic wizualnych w porównaniu do podstawowego uchwytu takich jak jaśniejsze drewno i nasycone kolory pasujące do reszty strzelby. Planuję stworzyć więcej odmian naszych broni, żebyście dobrze się bawili przerabiając wasze rzeczy gdy zostaną one zaimplementowane (zobaczcie kolbę poniżej).

Rust double barrel shotgun

Kolba z Siodełka Rowerowego Tom Butters

Po skończeniu odmiany kolby dla Dwururki, pomyślałem, że dobrym pomysłem byłoby stworzyć więcej odmian dla SMG, które, mam nadzieję, będą do wykorzystania też w przypadku AK47. Oczywiście programiści zajmują się teraz o wiele ważniejszymi rzeczami, ale mam nadzieję, że będziemy mieli sporo odmian, gdy zaimplementujemy te bronie.

Rust weapon stock

Celem kolby z siodełka rowerowego jest zmniejszyć odrzut korzystając z sprężyn. Jeśli macie jakieś inne pomysły, który wydają się fajne i praktyczne, dajcie nam znać!

Animacje Graczy Minh Le

Zauważyłem, że w niektórych animacjach gracze trzymali bronie w taki sposób, że nie były one skierowane w stronę, w którą patrzył gracz. Myślę, że błąd jest spowodowany ostatnią aktualizacją Unity, więc zająłem się tymi animacjami i poprawiłem je.

Zmieniłem też kilka animacji wystrzału, żeby wyglądały na bardziej agresywne i nagłe. Przejrzałem animacje łuku myśliwskiego i trochę je ulepszyłem, zmieniając pozycję ręki, która trzymała strzałę, oraz poprawiłem rotację głowy, żeby gracz wyglądał na celującego łukiem.

Dodałem też animacje przed rzutem kamieniem i dzidami, dzięki czemu ludzie będą wiedzieli, że gracz zaraz nimi rzuci.

Muzyka Alex Rehberg

Nowa aktualizacja Unity naprawiła problemy z crashami, które mieliśmy na serwerze, więc system muzyczny jest gotowy do zaimplementowania (szczególne podziękowania dla Andre i Garry’ego za czas, który poświęcili na pomoc w znalezieniu tego przed aktualizacją). Będziemy wprowadzali to bezpiecznie i poczekamy na przyszły tydzień, ponieważ już wystarczająco zrąbaliśmy grę w zeszłym tygodniu.

Wprowadziłem trochę zmian do sposobu, w jaki muzyka jest odtwarzana w menu głównym, poprawiłem kilka rzeczy, które zostały nadpisane z powodu szukania crashy w zeszłym tygodniu, i dodałem komendę “music.info” do konsoli, która wyświetla informacje o odtwarzanym utworze, sekcji, oraz poziomie intensywności. Kiedy w końcu to zaimplementujemy, chciałbym żebyście korzystali z music.info, żeby dać mi znać co jest dobre, a co wydaje się być niepoprawne, w przyszłym tygodniu!

Wprowadzone zmiany

Nowy system hitbox (ubrania już nie wpływają na hitbox)
Nowy model obrażeń broni (bardziej przewidywalne mnożniki obrażeń)
Nowe wykrywanie trafienia pociskiem
Nowy system ochrony ubrań i pancerza (mniej losowe właściwości chroniące)
Zwierzęta od teraz korzystają z określonych hitboxów z mnożnikami obrażeń
Animacje z trzeciej osoby przed rzutem kamieniem i dzidą
Naprawiono błąd z oczami wyskakującymi z orbit podczas trzymania planu kontrukcji
Dużego pieca już nie można stawiać w wodzie
Naprawiono upuszczone bronie, które nie zmieniały własności
Naprawiono latające naokoło cząstki miotacza ognia
Mały zbieracz wody korzysta z tap collidera dla +use (zamiast z całego obiektu)
Koniec podwójnego xp z niszczenia obiektów, które sie podniosło
Dodano komendę xp.reseteverything dla właścicieli serwerów, w celu rerollowania postaci
Aktualizacje animacji kuszy
Naprawiono przecinanie się głowy z czapką z wilka
Naprawiono sposób wykorzystania błędu projektu bazy, która była niewrażliwa na obrażenia od rakiet
Naprawiono rzadkie przypadku, w których budowanie mogło być wszędzie zablokowane
Naprawiono sposób wykorzystania błędu dotyczący stawiania obiektów przez skały
Naprawiono sposób wykorzystania błedu helikoptera, korzystając z okien budynków pomników
Naprawiono problemy z interakcją z oczyszczaczem wody po restarcie serwera
Naprawiono rzadkie fałszywe alarmy antyhacka z kodu legacy
Naprawiono rzadkie fałszywe alarmy antyhacka związane z weryfikacją pocisków
Dodano server.branch convar (wymusza połączenie klientów z określoną gałęzią serwera)
Zaktualizowano EAC

Prawa do wszelkich zamieszczonych we wpisie multimediów należą do firmy Facepunch Studios LTD lub twórców contentu. Wpis ten ma charakter informacyjny, jest skierowany do graczy Rust w wersji polskiej.

The rights to all media included in this blog post belong to Facepunch Studios LTD or the content’s creators. This post is only informative and it is addressed to polish players of Rust.

Facebooktwittergoogle_plusredditpinterestlinkedinmail

Komentarze Facebook

komentarzy. Jeżeli nie widzisz okienka wpisu i komentarzy blokuje je któraś z Twoich wtyczek w przeglądarce. Możliwe też że działasz w trybie incognito gdzie Twoja przeglądarka również blokuje tutaj dostęp.