Nelderim DevBlog #51

Minęły już 2 lata odkąd pierwszy raz powiedzieliśmy “będzie na ServUO”. No, trochę więcej. Ale wiecie jak to mówią: pierwszy DevBlog jest jak pierwszy naleśnik – nie liczy się… czy jakoś tak.

W takim razie, zapraszamy do otwarcia zimnego pienistego lub ciepłego z cytrynką czy innym sokiem i zagłębienie się w tę ścianę tekstu poniżej.

Miłej lektury! 🙂

Postępy prac

Prace na ServUO ostatnimi czasy idą bardzo dobrze i od ostatniego DevBloga udało nam się poczynić pokaźne postępy.

Ostatnią sekcję o postępach zakończyliśmy akapitem o tym, że są problemy z wydajnością na ServUO, a dzisiaj dumnie możemy się pochwalić, że wydajność ServUO została okiełznana, a my pozyskaliśmy ogrom doświadczenia oraz dodatkowe narzędzia, które pozwolą nam w przyszłości szybko i skutecznie ogarniać lagi.

Za problem z wydajnością odpowiedzialne było dosłownie kilka spawnerów od pułapek, które na obecnym serwerze działają bez problemu, jednakże na ServUO z jakiegoś powodu nie potrafią ustalić prawidłowego miejsca spawnu, i wielokrotnie próbują stworzyć spawn, co potrafi bardzo obciążyć serwer.

Dostępne narzędzia do monitorowania wydajności nie były wystarczające i stworzyliśmy prosty panel administracyjny do mierzenia czasu trwania spawnerów z natychmiastowym alarmowaniem GM, gdy coś przekroczy próg czasu.

Dzięki temu jesteśmy w stanie praktycznie natychmiastowo wychwycić co jest problemem i szukać rozwiązania, a z doświadczenia wiemy, że spawnery to powód 95% problemów z wydajnością.

Oczywiście problem nie został całkowicie rozwiązany i został wpisany na listę na potem, ale wreszcie możemy całkowicie komfortowo wszystko testować.

Jako drugi ważny punkt, udało nam się dokonać całkowitej inwentaryzacji artefaktów na ServUO i ustalić w jaki sposób pogodzić nasze obecne zmiany w ich dystrybucji ze zmianami, które są obecne na nowym silniku.

Gdy już wiemy co i jak, teraz czeka nas sporo pracy, żeby ten plan wdrożyć w życie, natomiast już teraz możemy wam zdradzić, że wraz z ServUO będziemy mieć do dyspozycji 12 nowych grup artefaktów, które planujemy systematycznie wdrażać do gry.

W związku z dość częstymi ostatnio problemami po aktualizacji naszym Nelderim Launcherem postanowiliśmy odświeżyć trochę to narzędzie 🙂

Jako że Launcher nie był ruszany od półtora roku, to bez zastanowienia zaktualizowaliśmy wersję .NET z 6 na .NET 8, a dzięki doświadczeniu zdobytemu podczas rozwijania CentrED#, postanowiliśmy zmienić framework UI z Avalonii na dużo przystępniejszy ImGui i w godzinę udało nam się stworzyć projekt od zera oraz odwzorować oryginalny wygląd Launchera, a także przenieść podstawowe funkcjonalności.

Kod Launchera został też ogólnie przeglądnięty i dostosowany do obecnych standardów Nelderim, a dzięki magii, gdy nadejdzie odpowiedni czas i uznamy, że nowy Launcher jest gotowy, obecny Launcher sam się zaktualizuje do nowej wersji.

No i co najważniejsze, nie odpuścimy dopóki Launcher nie zacznie poprawnie ściągać tego koszmarnego pliku Cliloc.enu 😀

Ponadto udało nam się wprowadzić na ServUO następujące pomniejsze zmiany

  • zdjęliśmy ograniczenia regionalne OSI, które uniemożliwiały trenowanie petom Skrytobójstwa i Tradycji Wojennej poza Tokuno
  • zmniejszyliśmy prędkość treningu peta (do dalszych testów), gdyż można było zrobić cały trening podczas bicia 1 mocniejszego mobka
  • rasa będzie wyświetlana w paperdollu u NPC
  • wyłączyliśmy oryginalne OSIowe prefixy i suffixy w przedmiotach, by nie pojawiały się przedmioty, typu “A marvellous tasak of haste”
  • przenieśliśmy zmianę, którą anik dodał na RunUO, która powoduje, że zwierzaki nie znikają po 20h. gdy wypuścimy je w domku
  • przenieśliśmy z xmlspawnera do kodu quest na kolczyki, który braliśmy od pijanego górnika w Celendir
  • poprawiliśmy wyświetlanie się emocji wywołanych komendą GM
  • tymczasowo wyłączyliśmy VvV
  • przetłumaczyliśmy kilka kwestii NPC, które były po angielsku
  • rozpoczęliśmy proces przenoszenia nagród za zlecenia do nowego systemu zleceń na ServUO
  • dokonaliśmy dalszej rozbudowy i dekoracji Orod

A jakby tego było mało, w międzyczasie zrobiliśmy jeszcze sesję testową…

Sesja testowa

Testowaliśmy przeniesione z RunUO rozwinięte zielarstwo
Sprawdziliśmy też ilości PSów, SoTy oraz “książeczek” do Talentów leci z Championów. Więcej o talentach znajdziecie m.i. w DevBlog#4, #8 i #31
Jako, że dotarliśmy do informacji, iż Obrażenia Fizyczne zadawane przez moby nie mogą nigdy wynosić 0%, więc w przypadku takiego Azatotha, obrażenia wynosiłyby 200%, musieliśmy sprawdzić czy to plotka – no i okazało się, że to jednak plotka 😉
Nasze customowe moby też wydają się działać OK z nowym ServUOwym AI
I kolejny powód do regulacji loot 😀
Naprawiliśmy błędnie wyświetlający się tytuł mistrzów gildii. Jako, że wykrywanie czy NPC jest Female nie do końca działa, zdecydowaliśmy się na unifikację tytułu
Sprowadziliśmy też DrowAnimalTrainer do jednego NPC, który tylko będzie wykrywał czy jest w regionie Podmroku, by sprzedawać Jaskiniowe Jaszczury i Jaskiniowe Żuki Juczne
Przeprowadziliśmy dalsze testy systemu treningu petów. Tym razem już z wpiętymi customowymi petami. System pewnie wymaga jeszcze bardziej ekstensywnych testów w większym gronie, ale na tę chwilę wygląda całkiem OK.
Testowaliśmy też czy poprawka, której dokonaliśmy na RunUO, działa jak powinna. Miała ona na celu poprawienie braku wpisu w niektórych bossach o dropie artefaktu.
Przebudowaliśmy targowisko w Orod – chwilowo jego dekoracja jest dość hmm… ascetyczna…, gdyż w głowach narodził nam się pomysł, by każdy gracz mógł udekorować swoje stoisko tak jak domek

Co nowego przynosi ServUO

SoTy – Scroll of Transcendence (jeszcze nie mamy fajnej nazwy na nie, więc roboczo nazwijmy je SoTy 😉 )

Co to takiego?

Po raz pierwszy pojawiły się wraz z Publish 57 i pozwoliły graczom dodawać punkty do swoich Umiejętności zgodnie z nazwą na zwoju (oryginalnie od 0.1 do 1.0). Jest to metoda alternatywna dla zdobywania umiejętności, w przeciwieństwie do tradycyjnej metody polegającej na prostych, powtarzanych próbach użycia umiejętności (słowem: KOX). Scrolls of Transcendence Book (czyli książka na przechowywanie owych zwojów) została wprowadzona wraz z Publish 73, która może pomieścić do 300 dowolnego rodzaju SoT.

Zdobywanie

Champion Spawny
Zwoje można zdobyć walcząc z potworami w Spawnach Czempionów i dropią losowo do plecaków graczy. Umiejętność na zwoju jest wybierana losowo. Liczba punktów na zwój waha się od 0,1 do 0,5 w obszarach z regułami Trammel i od 0,6 do 1,0 w Felucca, oryginalnie na OSI, choć naszym zamysłem jest ograniczenie tego do 0,1-0,3, gdyż i tak można je łączyć za pomocą Zwojów Łączenia.
Zwoje pojawiają się dla wszystkich umiejętności, w tym umiejętności niedostępnych dla PSów, takich jak między innymi Żebranie i Usuwanie Pułapek. (Żebranie w przyszłości zostanie zastąpione czymś innym).

Cnota Sprawiedliwości pozwala powielać ilość SoTów.

Mapy skarbów
Od Publisha 67 można je również zdobyć ze skrzyń skarbów. Od Publisha 105 można je zdobyć ze skrzyń ze skrytkami (Stash Chest).

Corgul
Dzięki rozszerzeniu Ultima Online: High Seas możesz je także zdobyć, odradzając się wokół Corgula Zaklinacza Dusz (więcej o nim tutaj w DevBlog#10), przestrzegając tych samych zasad, co w przypadku Champion Spawns.

Podsumowanie

Oj dużo się działo, lagi, spawnery, monitoringi, launchery, artefakty, testy, tłumaczenia, nerfy, inwentaryzacje, aktualizacje, a to nie wszystko bo jeszcze inne rzeczy są w trakcie i nie są gotowe na DevBloga.

Jak widać, zdecydowanie nie próżnujemy i w trochę spóźnioną drugą rocznicę rozpoczęcia prac nad migracją, możemy dumnie przestawić pasek postępu migracji na 55% 😀

Oczywiście to nie znaczy, że ServUO będzie dopiero za dwa lata, a każdy dobrze wie, że pierwsze 55% to tak na prawdę co najmniej 90% sukcesu.

Do następnego!

Tags:  ,