Category DevBlog

Nelderim DevBlog #68

Całkiem sporo się ostatnio działo, a efektem tego jest to, że powoli przygotowujemy się do uruchomienia kolejnej sesji testowej, ale po kolei…

Postępy prac

Migracja idzie pełną parą i od jakiegoś czasu jesteśmy na etapie domykania ostatnich tematów, które chcemy mieć zrobione zanim kolejny raz pozwolimy wam poczuć na własnej skórze Nelderim ServUO.

Pomimo, że większość to pomniejsze poprawki tu i tam, to przewinęły się też większe tematy które zasługują na co najmniej swój własny akapit.

Jednym z takich większych tematów, który ciągnie się od dłuższego czasu jest system metryk i system osiągnięć, które ze względu na specyfikę tych systemów, chcemy mieć uzupełnione przed zmianą silnika, a w momencie pisania mamy wyszczególnione ponad 30 metryk i zarejestrowane 99 osiągnięć.

Przykładowe wpisy w systemie osiągnięć

Kolejnym tematem, o którym chyba jeszcze nie wspominaliśmy, jest specjalna komenda, która pozwoli nam na automatyczną konfigurację wszystkiego co chcemy zrobić w momencie migracji.

Są to dość proste, acz czasochłonne czynności takie jak:

  • Rename postaci
    • Wyzerowanie zabójstw, sławy i karmy
    • Zwrot PD za wykupione języki
    • Wyzerowanie imienia, rasy, opisu i historii postaci
    • Dismount i schowanie zwierząt do stajni
    • Przeniesienie wszystkich postaci na wyspę początkową
  • Skonfigurowanie nowych teleportów Wyspa Początku->Komnaty Stworzenia->Nelderim

Pozwoli to nam poświęcić nasz czas na rzeczy niespodziewane, rzeczy spodziewane zrobią się same, a do tego będziemy mogli sobie cały proces wielokrotnie przećwiczyć podczas beta testów na wypadek różnorakich błędów.

Musimy od razu dodać, że dozwolone będzie zrobić rename na dokładnie taką samą postać jaką obecnie macie, a wymuszony rename jest na wypadek, gdy ktoś posiada obecnie postacie, które na ServUO powinny należeć do dwóch różnych frakcji. (Żadnego WIPE – postacie zachowają majątek i skille)

Nowy portal w komnacie stworzenia z potwierdzeniem wyboru

Chcemy też, żeby przejście na ServUO kojarzyło się z lepszą jakością, dlatego poświęciliśmy trochę czasu aby usprawnić proces zapisywania świata, bo kto nigdy nie padł przez sejwa trwającego 3 sekundy, niech pierwszy rzuci kamieniem.

Zastosowaliśmy zatem parę trików, sztuczek oraz technologii i na naszej leciwej maszynie testowej udało nam się zredukować czas zapisu z 8 sekund, do 1,5-2s, natomiast na maszynie deweloperskiej czas zapisu spadł z 1s do 0,2s.

Ciężko oszacować jak to dokładnie wpłynie na zapis na właściwym serwerze, jednakże przeprowadzone testy wskazały, że niezależnie od platformy testowej, możemy spodziewać się znacznej poprawy.

Pracujemy też nad usprawnieniem naszego Nelderim Launcher.

Co prawda obecny Launcher działa bardzo dobrze, ale mógłby działać jeszcze lepiej, dlatego nowa wersja będzie potrafić:

  • zarządzać całą instalacją UO Nelderim,
  • weryfikować oraz naprawiać instalację,
  • uruchamiać grę poprzez Launcher

Oprócz zmian funkcjonalnych pracujemy również nad nową szatą graficzną, jako że Launcher jest naszą wizytówką

Robocza wersja nowej szaty graficznej.

Ponad to zrobiliśmy też wiele mniejszych poprawek, a większość udało nam się komisyjnie sprawdzić na naszych ekipowych sesjach testowych

System dojenia zwierząt oraz produkcji serów został posprzątany w celu łatwiejszego wpięcia go w system metryk
System malowania obrazów, również otrzymał drobny lifting
Kolejne i ostatnie żmudne testy zautomatyzowanych questów na Umiejętności Specjalne dobiegły końca i po małych poprawkach wydają się być ok
Przenieśliśmy też emotki z Rycerstwa z RunUO na ServUO

Udało nam się też zamknąć tematy:

  • rozpad domów miejskich
  • ścieżkę postaci od Wyspy Początku do miast rasowych
  • naprawa będzie wymagać surowca
  • poprawki w naprawie i tworzeniu srebrnej biżuterii
  • fajki i tytoń przeniesione z RunUO
  • obozy z zamkniętym poszukiwaczem przygód
  • poprawki w Mrocznym Rycerzu i jego latarni przeniesione z RunUO

Co nowego przynosi ServUO

Napotkanie Exodusa

To event, który miał miejsce na OSI. Polega on na wezwaniu i pokonaniu bossa o imieniu Exodus (nazwa może różnić się finalnie u nas na serwerze), który powrócił po poprzedniej porażce.

Jak to działa?

Zdobycie Kluczy: Aby przywołać Exodusa, potrzebne są cztery klucze: szata, sztylet, skrypt rytuału i ołtarz. Klucze te można zdobyć na trzy sposoby:

Ścieżka Wojownika: Pokonując nowe stworzenia i ludzi w lochu Exodusa.

Ścieżka Łotra: Odnajdując ukryte skrytki z zapasami lub okradając popleczników.

Ścieżka Rzemieślnika: Tworząc klucze za pomocą różnych profesji rzemieślniczych.

Wykonanie Rytuału:

Do wykonania rytuału potrzebna jest grupa co najmniej dwóch graczy.
Każdy członek grupy musi posiadać własną szatę, sztylet i rytuał.
Ołtarz należy umieścić na dowolnym sanktuarium cnoty.
Każdy członek Party musi dołączyć swój rytuał do księgi na ołtarzu i wybrać ścieżkę, używając sztyletu na księdze lub na sobie.
Lider Party może rozpocząć spotkanie

Pole Bitwy:

Walka z Exodusem odbywa się w Ver Lor Reg, zrujnowanym mieście Gargulców (na OSI; u nas lokacja nie została jeszcze ustalona)

Ograniczenia:

Exodusa można przywołać tylko wtedy, gdy nie został zabity w ciągu ostatnich dziesięciu minut.
Jeśli punkty życia Exodusa spadną poniżej 60%, kolejne grupy nie będą mogły dołączyć do walki.
Gracze, którzy nie opuszczą obszaru w ciągu 10 minut od śmierci Exodusa, zostaną teleportowani do losowego sanktuarium w Ilshenar (na OSI)

Nagrody:

Pokonanie Exodusa daje szansę na zdobycie potężnych nagród, takich jak:

  • Zwoje zwiększające maksymalne statystyki
  • Różne elementy pancerza z unikalnymi właściwościami
  • Broń ze specjalnymi propsami


Szczegóły tutaj: https://uo.com/wiki/ultima-online-wiki/combat/pvm-player-versus-monster/exodus-encounter/

A tak wygląda boss

Podsumowanie

I to by było na tyle, jeśli chodzi o to co przygotowaliśmy. Trzymajcie się cieplutko w te chłodne dni i do zobaczenia w przyszłym DevBlogu!

Read More

Nelderim DevBlog #67

Bla, bla, bla… ServUO. Każdy dzień przybliża nas do finalizacji tego projektu, a raczej osiągnięcia stanu, w którym będziemy mogli się dalej rozwijać już na spokojnie po migracji i… łatać dziesiątki bugów 🙂 Zapraszamy do lektury!

Zmiany i poprawki

Przenieśliśmy część autorskich rozwiązań z RunUO na ServUO:

  • Przeniesiono zmianę z wyrabianiem klucza deszyfrującego w menu majstra,
  • efekt dezorientacji działa na odporne na nią stwory ze skutecznością 25% podstawowego efektu,
  • zlecenia myśliwego działają już na ServUO, również te pobrane przed migracją,
  • uwzględniono poprawkę do błędnego działania regionu domków oraz ich drzwi,
  • naprawiono zlecenia łukmistrza po migracji zapisu stanu gry,
  • przywrócono czas czarowania z RunUO,

Oraz naprawiono część rzeczy:

  • Poprawiono działanie obozów z więźniami oraz lootu ich skrzynek,
  • zlikwidowano problem z nienaliczeniem duszy w latarni mrocznego rycerza,
  • pomniejsze zmiany w łupach ze skrzyń skarbów,
  • naprawa przedmiotu będzie wymagała posiadania surowca, z którego został wykonany – połowa wartości koniecznej do wytworzenia,
  • poprawiono działanie beczki na proszki wzmocnienia,
  • naprawiono błąd, w wyniku którego zlecenia łukmistrza stawały się zleceniami alchemika po dodaniu ich do księgi zleceń,
  • dokonano kolejnych tłumaczeń oraz poprawek w mapie.

Statystyki postaci

Nie chodzi nam tutaj o bazowe statystki postaci takie jak siła, zręczność i inteligencja, ale coś odrobinę innego co czasami nazywamy również metrykami postaci, a wszystko zaczęło się od systemu osiągnięć opisywanego w DevBlog #34 i DevBlog #40.

Podczas implementacji systemu osiągnięć uświadomiliśmy sobie, że musielibyśmy od samego początku zaimplementować wszystkie osiągnięcia, ponieważ postęp każdego osiągniecia był zbierany przez właśnie to osiągnięcie, i na przykład: gdybyśmy po roku dodali nowe osiągnięcie “zabij 100 orków”, to postęp tego osiągnięcia byłby liczony od momentu zarejestrowania tego osiągnięcia, pomimo, że postać do tego momentu zabiła już nawet 500 orków.

Ilość zabitych paragonów również będzie zbierana

Więc postanowiliśmy wywrócić system osiągnięć do góry nogami i zacząć zbierać przeróżne metryki postaci, a osiągnięcia oprzeć na wcześniej zebranych metrykach.

Tak więc gdy tylko wystartuje ServUO, to prawie każda znacząca akcja waszej postaci będzie zliczana przez serwer oraz niewykluczone, że będziecie mieli wgląd do waszych metryk i będziecie mogli licytować się z innymi kto zabił więcej orków, a kto wypił więcej słabych mikstur leczenia.

Już teraz zaimplementowane mamy 30 przeróżnych metryk i wiemy że nie jest to wszystko, bo oprócz zwykłych metryk takich jakich ilość zabitych potworów danego typu czy ilość stworzonych przedmiotów danego typu mamy też takie kwiatki jak ilość rzuconych boli czy ilość zrobionych kroków.

Roboczy podgląd wczesnej wersji systemu metryk

Obecnie jedynym zastosowaniem dla metryk jest wspominany wcześniej system osiągnieć, który został już pomyślnie zintegrowany, ale nie wykluczamy też innych zastosowań w przyszłości, takich jak wgląd postaci do swoich statystyk, potencjalnie wykrywanie problemów z ekonomią, łatwiejsze wykrywanie gagatków którzy próbują oszukiwać, czy po prostu tworzenie bezsensownych agregacji i wykresów typu która rasa rzuca najwięcej zaklęć ósmego kręgu.

Jeżeli macie pomysł co powinno trafić do systemu metryk to oczywiście dajcie nam znać, bo na pewno o czymś zapomnimy 🙂

Questy na umiejętności specjalne

DevBlog#64 wspominał o automatyzacji questów na umiejętności specjalne. Prace nad sprawdzeniem nowopowstałych NPC były jednym z wątków na dwóch poprzednich sesjach testowych. Przyczyny techniczne zmusiły nas do lekkich uproszczeń oraz ponownych testów. Kilka z nich działa już poprawnie, częśc potrzebuje lekkich modyfikacji. Zastosowaliśmy również zabieg zwiększenia immersji oraz urozmaicenia odbioru NPC, postanowiliśmy poświęcić trochę czasu na dostosowanie ich wyglądu, przy czym użyliśmy kilka nowych typów przedmiotów dostępnych na ServUO. Oto kilka z nich:

Nauczyciel Starożytnej Magii
Mroczny Rycerz
Strażnik Lasu
Herdeista

Co nowego przynosi ServUO

Nowy props – Hit Mana Drain

ServUO przynosi wiele nowych prospów, co może wywrócić do góry nogami przyjęte schematy PvM i PvP. Jednym z nich jest Hit Mana Drain. Props ten występuje na niektórych broniach. Udane trafienie taką bronią zmniejsza manę celu o 20% wartości obrażeń zadanych przez postać, która wywołała ten efekt. Natężenie waha się między 2% a 50%. Dla przykładu jeśli ten props występuje na mieczu o wartości 40% a my zadamy celowi obrażenia na poziomie 30-35, oznacza to, że statystycznie 2 na 5 niesparowanych trafień odbiorą celowi od 6 do 7 punktów many. Strzeżcie sie magowie zaprawdę powiadam wam, oto nadchodzi wiek miecza i topora!

Tygrysy

Nowy silnik przynosi osobliwe storzenia w postaci gamy tygrysów. W naszym świecie być może pojawią się tygrysy w wariancie klasycznym, dwa czarne oraz dwa białe. Dodatkowo niezwiązany z poprzednikami do puli tych stworzeń doszedł tygrys szablozębny.

Wszystkie tygrysy można ocswoić oraz oczywiście trenować, zwykłe natomiast można dodatkowo dosiadać! Zwierzęta te oferują również tygrysie skóry do wycięcia, z których możemy tworzyć nowe typy uzbrojenia dostępne w wariancie żeńskim i męskim. Dla kobiet dostępna jest spódnica krótka oraz długa oraz biustonosz. Poniżej przykład:

Zbroje ze skór tygrysa

Dla tych, którzy są mniej zafascynowani żywmi tygrysami, dostepne są również w postaci dywanów do naszych domków. Poniżej przykład skrór i dywanów.

Oryginalnie dywany zdobyć można jedynie z questa a ich kolor ma swoją hierarchie i rzadkość występowania. Może u nas mogłyby być tworzone w postaci trofeum? Koniecznie dajcie znać co o tym myślicie na naszym Discordzie!

Podsumowanie

To tyle na dziś, dajcie nam znać co myślicie o nowościach i zmianach. Pracujemy codzienie by rozwijać Nelderim i mamy nadzieję, że doceniacie nasze DevBlogi oraz widzicie dzieki temu nasze postępy. Do następnego!

Read More

Nelderim DevBlog #66

Jak zwykle w piątek witamy weekend gorącym DevBlogiem! Dziś przed Wami trochę ciekawostek z prac oraz wirtualny spacer po odświeżonej mapie! Miłej lektury 🙂 .

Zmiany, poprawki, testy

Prace w kierunku przesiadki na nowy silnik idą bardzo dobrze i prawie wszystkie taski które chcemy zrobić przed przesiadką, udało nam się zamknąć, albo są bardzo blisko zamknięcia.

Z rzeczy które nam zostały, to garść mniej istotnych zmian do przeniesienia z obecnego silnika oraz kilka większych tasków, które mamy rozpoczęte i będziemy je szlifować w międzyczasie.

Jednym z większych tematów który próbujemy obecnie dokończyć to zestaw questów do umiejętności specjalnych, który jest już na etapie, że zadania da się otrzymać, ale większość z nich wymaga jeszcze kilku poprawek tu i tam.

Między innymi musimy jeszcze dodać kilka tłumaczeń

Całkiem pokaźna ilość zadań oczekuje obecnie na komisyjne przetestowanie, a dodatkowo czeka nas też oficjalna sesja PvM, która powinna domknąć kwestie tego czy mniej więcej wszystko się zgadza.

Gdy już wszystko będzie gotowe, to będziemy mogli zacząć myśleć o drugiej sesji testowej, ale do tego też będziemy się musieli trochę przygotować.

Zmiany na mapie

jak dobrze wiecie z poprzednich DevBlogów, chcielibyśmy aby Orod było nową ostoją dla graczy w zastępstwie za molocha jakim jest Tasandora. Jak wiecie bez obaw wciąż będzie ona na mapie z pewnymi ograniczeniami, natomiast dzis chcielibyśmy Wam zaprezentować (Nowe) Orod.
W tym linku możecie pobrać obraz nowego Orod w rozdzielczości 16k, zrobionego dzięki Centred# autorstwa Kaczego. Zapraszamy do wirtualnego spaceru, można przybliżyć 🙂

Centrum Orod
Port
Nowa dzielnica mieszkalna

Całe miasto zostało osadzone na ziemi a mosty usunięte. Dodaliśmy klimatyczne ścieżki i ozdoby. Dodatkowo skompresowaliśmy budynki NPC, tak aby tematycznie klika profesji znajdowało sie w jednym. Zbudowaliśmy również w okolicach miasta kilka budynków do wynajmu, jak i przebudowaliśmy część zbędnej fortyfikacji na osiedle położone na skałach. Przewidujemy dalszą rozbudowę domków do wynajmu w razie potrzeb.

Podsumowanie

Wydaje nam się, że jesteśmy już na ostatniej prostej, aby niedługo znowu wpuścić graczy na serwer testowy.

Zobaczymy czy znowu będzie to ograniczona ilość osób, czy może wpuścimy wszystkich, czy będzie to tygodniowa sesja testowa, czy może potrwa dłużej, czy będzie tylko jedna sesja testowa, czy znajdzie się tyle błędów, że będzie potrzebna jeszcze dodatkowa sesja testowa.

O tym wszystkim dowiecie się w niedalekiej przyszłości, jak już będziemy gotowi. Jak zwykle prosimy abyście podzielili sie swoimi odczuciami na naszym Discordzie.

Do następnego 😉

Read More

Nelderim DevBlog #65

Od ostatniego DevBloga wykonaliśmy naszym skromnym zdaniem kawał dobrej roboty. Kiedy mała Kaczuszka (w naszym żargonie – kierowniczka) pozwoli na testy – wykorzystujemy ten czas jak najwydajniej by testować wprowadzane w ciągu tygodnia zmiany. Zapraszamy do lektury i do podzielenia sie swoją opinią na naszym Discordzie 🙂 .

Testy, zmiany i poprawki

18.09 i 26.09 miały miejsce sesje testowe. Nie udało się przetestować wszystkich zmian, ale znaczna ich część dostała zielone światło i została przeniesiona do zakładki “Zrobione”.

Długo wyczekiwana zmiana – Dezorientacja będzie działać na bossy, pomimo BardImmune. Jak to będzie rozwiązane? Owe bossy będą otrzymywały jedynie 20% efektu obniżenia statysyk/umiejętności z Dezorientacji.

Disco na bossach – to możliwe!

Udało się nam w końcu sprawić, by koń morski nie wymagał interwencji GMa.

Prędkość stworów została uzależniona od ich staminy:

Zmęczony potwór Cię nie dogoni 🙂

Okazało się, że obozy, z których można uwolnić eksortowalną postać i zdobyć przedmioty ze skrzynek, są popsute. Spawner odpinał potwory i wciąż je respawnował, co prowadziło do zawieszenia się serwera, a sama grafika klatki nie wyświetla się. Udało się naprawiać problem respawnu, problem grafiki nadal trzeba rozwiązać.

Sporym kamieniem milowym było wprowadzenie systemu gradacji trudności potworów, który już dawno temu został zapowiedziany. Większość dungów, choć nie wszystkie, otrzymają ten system, co spowoduje, iż nawet słabsza postać może początkowe części dungeonów zrobić bez większych przeszkód i w połączeniu z odpowiednim lootem da jej to przedmioty odpowiednie na tym poziomie rozgrywki. Postaci, które przejdą dalej, otrzymają przedmioty o większym natężeniu, odpowiadające ich poziomowi rozwoju postaci. Daje to też pewien rodzaj wyzwania.

Bo NELgbt pozwala identyfikować się z czym chcesz

Dalsze testy systemu map ze skrzynek skarbów, już po kilku szlifach, pokazały, że jeszcze musimy bardziej oszlifować loot. Mianowicie, na ServUO, niektóre propsy wyskakiwały ponad cap tego do czego przyzwyczaiło nas RunUO. Musimy więc dostosować te wartości, by przedmioty nie były zbyt OP.

Prawie jak art, a to skrzynia 3 poziomu
Young został też naprawiony – nie wyrzucą już gracza na inny Facet (Trammel), jak na OSI, oraz przetłumaczone zostały wszelkie kwestie związane z tym statusem

Cały region Undershadow, który odpowiada za Podmrok i Drowy, został przeniesiony pomyślnie, a wraz z nim wszelkie elementy dotyczące owego systemu.

Moby z MageAI będą miały szansę zdispellować fragmenty ścianek

Pełna lista zmian i poprawek:

  • dalsze szlify autoquestów na księgi umiejętności specjalnych, flag wykluczająych siebie nawzajem
  • poprawki w serializacji zbroi konia bojowego
  • poprawka na konia morskiego, który nie będzie już wymagał ingerencji GM, by móc go poprawnie używać
  • dodanie możliwości użycia Dezorientacji na celach, które są niewrażliwe na “bardowanie”, jednakże owy efekt będzie mieć tylko 20% swojej skuteczności
  • kolejne poprawki w prędkości stworzeń -> teraz prędkość będzie uzależniona od staminy
  • wyłączono wszelkie gargulcowe przedmioty, które można nosić oraz możliwości zmiany ludzkich na gargulcowe
  • poprawiono flagi niektórych bloków, przez które dało się przebiegać
  • poprawiono bug, który powodowal crash serwera, gdy GM chciał zrobić niestackowalny item stackowalnym
  • przywrócono wszystkie artefakty do bazowej wartości wytrzymałości o wysokości 255 punktów
  • dokonano drobnych poprawek w pogromcach, które były źle wpięte
  • wyregulowano ilość kamieni szlachetnych w skrzyni z mapy skarbów (do dalszych testów)
  • przywrócono nasz RunUOwy Cast Time (różnica została wykryta podczas testów dla Patronów) [zadanie cofnięte, gdyż zabrakło nawiasów (lol), przez co cast time każdego zaklęcia wynosił około 0,3 sekundy]
  • dokonano poprawek w obozach orków, których nadmierny spawn i odpinanie się od spawnera powodowały spowolnienie serwera
  • dokonano pomniejszych zmian w specjalnych nagrodach w skrzyniach z map skarbów
  • przerobiono nagrodę z zamówień Majstra, Keg Na Proszki Wzmocnienia, tak, by rozpoznawał konkretne proszki wzmocnienia dla konkretnych przedmiotów (Księgi, Stolarskie, Łuki, Skóry, Metal) [to zadanie zostało cofnięte, gdyż wymaga drobnych poprawek w opisie samego kegu, gdy już wrzucimy do niego proszek]
  • dodano regiony do systemu skalowania mobów w dungach
  • dodano masę tłumaczeń w Cliloc
  • dokonano poprawek w systemie Young’a -> były problemy z teleportacją po śmierci
  • dokonano poprawek we frakcjach
  • dokonano aktualizacji worka na eeagenty
  • przeniesiono poprawkę z RunUO powodującą, iż przedmioty zostają w tym samym miejscu w plecaku po użyciu cnoty Poświęcenie (Sacrafice)
  • dokonano poprawek w regionach
  • dokonano poprawek w tytułach z championów
  • dodano nowe bossy do systemu dropu artefaktów
  • wyrzuciliśmy BossAI i wszystkie bossy i moby, które mialy to AI, zastapiliśmy je MageAI lub MysticAI
  • poprawiliśmy bug z MageAI, które powodowało, iż potwór próbował się teleportować, gdy miał pod tyłkiem ściankę; teraz odtruwa się/rzuca dispel field/próbuje się przesunąć
  • dokonano poprawek w tłumaczeniach destylatora
  • wprowadziliśmy zmianę, która powoduje, iż naprawa przedmiotów będzie wymagała surowców oprócz samego zwoju naprawy [niestety, zmiana została cofnięta do przeróbek, gdyż nie posiadając krawiectwa, nie wiemy jak korzystać ze skór/metali innych, niż zwykłe]
  • przywróciliśmy rozpad domów
  • przenieśliśmy i stestowaliśmy cały system Podmroku, czyli teleportacja, kolor portali, światło inne dla Drowów i inne dla naziemców, strażnicy, npc
  • dokonaliśmy zmiany, która powoduje, że z champinów będzie 20% szansy na drop Talentu (Skill Mastery) poziomu między 1 a 3
  • przywróciliśmy poprawne hue przedmiotów [kilka hue z palety za PDki jeszcze się nie zgadza – poprawimy w przyszłości]
  • dokonaliśmy zmiany, która powoduje, że komenda [kp wyświetla PDki dla całego konta, a nie tylko dla postaci, tym samym, PDki dla konta będą wspólne [pozostały poprawki wielkości gumpa]

Podsumowanie

To by było na tyle, mamy nadzieję, że wyczekujecie ServUO tak samo jak my. Po tylu latach wreszcie widać światełko w tunelu na niedługi koniec! Na pewno przed GTA VI 😉 Do następnego!

Read More

Nelderim DevBlog #64

Mimo, iż testy nie odbywają się już tak często jak poprzednio, to zapewniamy was, że dzisiejszy DevBlog nie jest mniej obfity w soczyste nowości. Zasiądźcie i kubkiem dobrej herbaty i przeczytajcie co dziś dla was przygotowaliśmy. 🙂

CentrED#

Dawno już nie pisaliśmy o naszym nowym edytorze mapy, bo nie jest to aż tak istotne i nie chcieliśmy wspominać każdej poprawki, jednakże nareszcie udało nam się osiągnąć pewien kamień milowy.

Otóż CentrED# oficjalnie ma zaimplementowane wszystkie funkcjonalności, które ma oryginalny CentrED, a lista nowości od naszej ostatniej publikacji, przentuje się następująco:

  • Wyświetlanie animowanych obiektów
  • Wyświetlanie siatki terenu
  • Konfigurowalne skróty klawiszowe
  • Specjalny widok pokazujący wysokość każdej kratki terenu
  • Światła
  • Masowe Operacje
  • Export wycinka mapy do pliku png albo jpg
  • Chat i lista użytkowników
  • Narzędzia administracyjne
  • Pasek statusu
  • Kilkadziesiąt pomniejszych usprawnień i poprawek

Nie będziemy opisywać każdej wspomnianej funkcji, ale możemy was zapewnić, że CentrED# jest już potężnym narzędziem.

Światła
Widok wysokości terenu
Pasek statusu

Następna aktualizacja pojawi się zapewne, gdy uda się całkowicie zdetronizować CentrEDa+ 🙂

Co nowego przynosi ServUO

Broń rozszczepiająca (Splintering Weapon) to nowy props, który można znaleźć na broniach na ServUO. Ale co to jest?

Udane trafienie taką bronią powoduje, że od broni odłamuje się odłamek (zmniejszając jej wytrzymałość), uderzając ofiarę i powodując efekt krwawienia oraz cztery sekundy wymuszonego chodzenia (nie można biegać). Ta właściwość kumuluje się ze specjalnym ruchem krwawienia (Bleed Attack), powodując dodatkowe obrażenia i wydłużając czas trwania specjalnego ataku.

Zmiany i testy

Ostatnio możecie zauważyć, że objętościowo zmian jest mniej, jednakże, są one bardziej znaczące i same zmiany, które wprowadzamy wymagają więcej pracy.

Jedną z owych zmian jest ograniczenie terenu Tasandory. Tasandora jest ogromnym miastem i spora jego powierzchnia jest “martwa”, więc zdecydowaliśmy się ograniczyć się jedynie do tej “żywej” części Tas. Z tego tytułu, Levy wybudował płotek odgradzający część “żywą” od “martwej”.

Co to oznacza?

Jak pewnie już się od jakiegoś czasu domyślacie, Tasandora nie będzie miastem, w którym gracze będą mieć domki na ServUO. Nowymi miastami dla Tamaeli, będą Orod/Tirassa. Jarlingowie zostają w swym skutym lodem i pokrytym śniegiem Garlan, Krasnoludy, jeśli uda im się na RunUO odbić Twierdzę, to pójdą właśnie tam. Lotharn pozostaje nadal Elfickie i L’Delmah dla Drowów.

Ale jak ja przeniosę cały swój dobytek?

Oczywiście nie pozostawimy graczy bez pomocy. Na około miesiąc przed startem ServUO planujemy pomóc wam spakować domki i postawić wam bankiera/skrzynię obok nowej lokacji na wasz dom.

Oto przykład jak Tasandora może wyglądać

Testy

11.09 odbyła się krótka sesja testowa, podczas której udało nam się przetestować kilka zmian, które wprowadziliśmy oraz parę bugów i fixów, które dodaliśmy po ostatniej sesji testowej.

Najpierw na tapet poszły zmiany w Mapach Skarbów. Do tej pory na RunUO mieliśmy sztywno określone miejsca, w których skrzynia była wykopywana. To powodowało, że gracz skakał runami po mapie. Takie rozwiązanie nie sprzyja chociażby możliwości spotkania się graczy na drodze. ServUO wraz ze swoim OSIowym rozwiązaniem oferuje coś znacznie lepszego, co zdecydowaliśmy się zaadaptować. Mianowicie, na ServUO określony jest region całej mapy, na której losuje się miejsce danej skrzyni. Kod pomija drogi, wody, miejsca niedostępne dla gracza. Zwiększa to losowość miejsca skrzyni, zwiększa szansę na napotkanie innych graczy po drodze i wprowadza trochę funu w szukanie skrzynek.

Dodatkowo, przetłumaczyliśmy też wszelkie kwestie związane z mapami i kopaniem skrzynek z map skarbów.

Wszystko wydaje się działać poprawnie. Pozostały jeszcze drugie testy lootu, a potem już tylko testy graczy.

Kolejną rzeczą, którą poprawiliśmy i musieliśmy ponownie przetestować to drop zwojów Druidyzmu i Mistycyzmu. Z racji tego, że automatyzujemy questy na umiejętności specjalne, to i zwoje tych umiejętności będą leciały z bossów.

Na tę chwilę udało się podpiąć Druidyzm do Wyższego Wampira (boss wkrótce będzie dostępny na RunUO), Meduzy oraz Naśladowcy Vox Populi i Mistycyzm do Corgula oraz Pancernego Mechanicznego Strażnika.

Udało nam się też poprawić błąd systemu imion, który powodował, że wyświetlanie się nazw zwierząt było dość dziwne:

Po lewej po poprawce, po prawej przed poprawką

Wszystkie questy na Umiejętności Specjalne (+ Druidyzm i Mistycyzm) zostały zautomatyzowane na ServUO. Dzięki temu bezobsługowo każdy będzie mógł sobie taki quest zrobić. Dodatkowo, Księgi wcześniej wspomnianych questów zostaną oflagowane, tak, by tylko osoba po queście mogła ich używać. Będą też pobłogosławione dla konkretnej postaci, więc żadna inna postać nie będzie mogła jej używać (mechanikę serializacji wstecz w sprawie już istniejących ksiąg Kaczy właśnie rozwija). Dodatkowo, wzięcie innego questa tego typu będzie wyłączało nam flagę pozwalającą na użycie szkoły magii już wykonanego questa.

Same questy trzeba jeszcze przetestować. Najpierw w gronie GM, potem Patronów, a następnie wszystkich graczy. 11.09 miały odbyć się wstępne testy, jednakże, znaleźliśmy jeszcze kilka baboli do poprawy.

Podsumowanie

Zapewne ten DevBlog poruszył was bardziej, niż poprzednie, ale nie dziwimy się. Sporą dawkę emocji zeserwowaliśmy w tej częśći. Mamy nadzieję, że jesteście choć w niewielkim procencie tak podekscytowani jak my, jeśli chodzi o postępy.

To tyle na dziś. Jako, że dostępnośc Kaczego jest dość ograniczona ostatnimi czasy, zdecydowaliśmy się robić DevBlog zarzdziej, aby nazbierać sensownej treści. Więc… widzimy się w tym samym miejscu za 4 tygodnie!

Read More

Nelderim DevBlog #63

Proszę rozsiąść się wygodnie i zabrać jakiś napitek, bo oto wjeżdża nowy DevBlog z dawką zmian, testów i nowości z ostatnich 2 tygodni. Zapraszamy 🙂

Co nowego przynosi ServUO

Kojarzycie pewnie już wielu znaną zbroję na smoka bagiennego. Zawsze zastanawialiście się pewnie dlaczego kuć ją z innych materiałów, niż z żelaza. ServUO wychodzi na przeciw takim zapytaniom.

ServUO dodaje nam zróżnicowanie wytrzymałości i dodatkowych odporności dla smoka. A wygląda to tak:

MetalZbrojaOdporności smoka bagiennego
Suma
ŻelazoZwykła10,000+25+15+10+15+10+75
Wyjątkowej jakości12,000+5 dodatkowej odporności każdego typu+100
Matowa miedźZwykła12,500+60+15+10+15+10+110
Wyjątkowej jakości14,500+5 dodatkowej odporności każdego typu+135
ShadowZwykła15,000+35+20+10+15+35+115
Wyjątkowej jakości17,000+5 dodatkowej odporności każdego typu+140
MiedźZwykła10,000+30+20+10+40+20+120
Wyjątkowej jakości12,000+5 dodatkowej odporności każdego typu+145
BrązZwykła10,000+40+15+35+20+15+125
Wyjątkowej jakości12,000+5 dodatkowej odporności każdego typu+150
ZłotoZwykła10,000+30+20+20+15+20+105
Wyjątkowej jakości12,000+5 dodatkowej odporności każdego typu+130
AgapitZwykła10,000+35+30+20+25+20+130
Wyjątkowej jakości12,000+5 dodatkowej odporności każdego typu+155
VerytZwykła10,000+40+30+20+25+15+140
Wyjątkowej jakości12,000+5 dodatkowej odporności każdego typu+165
ValorytWyjątkowej jakości12,500+45+15+25+30+25+140

Testy, testy i jeszcze raz testy

21.08 i 26.08.2024 miały miejsce testy, podczas których przetestowaliśmy kilka wprowadzonych przez nas poprawek. Mianowicie:

Przetestowaliśmy też poprawkę, którą nanieśliśmy niedawno w Clilocu, która powoduje, że materiał, z którego mamy wykonać łuk w zleceniu wyświetli nam się poprawnie.

Poprawiliśmy wyświetlanie się wytrzymałości zbroi na smoku bagiennym/koniu bojowym. Są teraz zgodne z oryginalnym systemem OSI.

26.08 sprawdziliśmy zmianę normalizującą prędkość strażników. Ich prędkość przed zmianami powodowały, że każdy strażnik pojawiał się przy postaci gracza w kilka milisekund i nie dało się mu uciec. Obecnie, jest już to możliwe.

21.08 zrobiliśmy sobie sesję PvM, by sprawdzić Mage_AI oraz Boss_AI, które zdawały się zawieszać w momencie, gdy rzucono im pod tyłek ściankę. Pierwszy fix nie do końca poprawił ten problem.

26.08.2024 zrobiliśmy kolejny test, po kolejnych poprawkach, boss już nie wydaje się zawieszać na jednym czarze, a stara się uniknąć ścianki. Nadal wykonuje teleport i może teleportować się w ściankę, ale nie zawiesza się na odtruwaniu.

Dodatkowo, macie tutaj mały sneak peek nowego bossa, który pojawi się rówienż na RunUO. Boss – wyższy wampir – potrafi zmieniać postaci i pety w nietoperze, tak jak Barracoon zmienia w szczuroczłeki, wysysa życie, ale ma relatywnie mało HP. Będzie to miniboss. Na ServUO będą leciały z niego czary Mistycyzmu.

Poza tym zmiany, które popełniliśmy i przetestowaliśmy, to między innymi: czary Druidyzmu i Mistycyzmu będą leciały z bossów, wyłączenie Vendor Search do czaru reworku, zmniejszenie ilości paragonów w ParagonRegion, poprawki w systemie imion, który nie ukrywał imion petów (po zmianach wprowadzonych ostatio).

Dodatkowo, nasz majster-inżynier Kaczy odkrył dlaczego nam co 3 sekundy migała mapa. Otóż, był to problem na linii UltimaLive (narzędzie do edycji mapy live bez potrzeby restartu) a ClassicUO, któremu już wystawił poprawkę do tego problemu.

Autoquestowanie po Umiejętności Specjalne

Postanowiliśmy również uczynić questy na księgi czarów (Druidyzm, Mistycyzm oraz inne Umiejętności Specjalne) dostępnymi dla wszystkich za pomocą autoquesta. Na chwilę pisania tego wpisu, mamy już około 50% roboty zrobione. Questy będą nadawały flagę używania księgi, wzięcie innego questa tego typu będzie automatycznie wyłączało poprzednie flagi (można mieć tylko 1 umiejętność specjalną, więc 1 flagę będziemy mieli aktywną w tym samym czasie), księgi będą pobłogosławione dla danej postaci no i nadal pozostaną ograniczenia wiarowo-rasowe względem tych questó.

Podsumowanie

I to tyle na dziś. Dziękujemy za uwagę i mamy nadzieję, że nie możecie się już doczekać pierwszych otwartych testów, tak samo jak my. Do usłyszenia za 2 tygodnie 🙂

Read More

Nelderim DevBlog #62

Ostatnie dwa tygodnie minęły nam bardzo spokojnie, bo chyba pierwszy raz, nie licząc tygodni wakacyjnych, nie ruszyliśmy żadnego dużego tematu, a skupiliśmy się na dokręcaniu i doszlifowywaniu przeróżnych pomniejszych rzeczy tu i tam.

Szlify i małe poprawki

Pomimo, że żadna z rzeczy które udało nam się zrobić w ostatnim czasie nie była na tyle duża, że zasługiwałaby na swój własny akapit, to fakt, że udało nam się wprowadzić 67 mniejszych zmian, samo w sobie jest dość sporym osiągnięciem.

Oprócz kolejnych tłumaczeń, albo poprawek przeniesionych z obecnego silnika, chyba największą grupą zmian było dostosowywanie wszelakich skrzyń skarbów i dostępnego z nich lootu.

Jako jedną z nielicznych nowości, które pojawią się na ServUO, będzie mechaniczne wymuszenie uzupełnienia profilu postaci 🙂

Dołożyliśmy również blokadę wyboru tylko wyznaczonych ras na podstawi frakcji, oraz wykryliśmy i od razu naprawiliśmy dwa nowe niedociągnięcia w systemie imion.

Widoczne prawdziwe imię postaci podczas czarowania i ataku.

Jedną z rzeczy, która przysporzyła nam trochę więcej problemu, było AI Bossów zawieszające się w niekończącej się pętli rzucania czaru trucizny. AI to zostało wstępnie naprawione i zostało dodane do listy rzeczy, które wymagają dokładnego posprzątania 🙂

Testy Boss_AI

Pośród pozostałych zmian, znalazły się takie które dotykały obsługi kont i haseł, górnictwa, wyglądu niektórych gumpów spodowane tłumaczeniami, czaru Create Food, karmienia zwierząt oraz uwierniania, tłumaczenia i dostosowyanie questów, fixy handlarzy artefaktów i zwojów mocy, czy poprawki z tworzeniem i konfiguracją nowych postaci i wiele, wiele innych.

Oczywiście wszystko to zostało przez nas dodatkowo przetestowane podczas dwóch sesji testowych, które w dalszym ciągu systematycznie przeprowadzamy co najmniej raz w tygodniu 🙂

NPC w Tasandorze będą przynależały do Kompanii Handlowej
Zrobiliśmy też rework skrzyń z map oraz z rybactwa, by bardziej pasowały do nowego systemu loot oraz tego co mamy na RunUO. Pozbyliśmy się też niepotrzebnych rzeczy
Mapka z systemu Vendor Search w odsłonie Nelderim

Co nowego przynosi ServUO

Mamy swoje skarby
Mamy coś czego nie zabiorą nam


A my mamy skarby w Doom. W nowych patchach na OSI dostajemy dostęp do Treasures of Doom. Ale co to dokładnie jest?

Treasures of Doom to wydarzenie, które miało miejsce w Doom na Halloween 2014 podczas Publishu 87. Możliwe, że u nas będzie to działać jako coś sezonowego, jednakże, niczego nie obiecujemy na tę chwilę, gdyż z pewnością nie będziemy tego mieć na start.

Co dokładnie możecie zdobyć? O tym tutaj.

Podsumowanie

Jak to mówią, powoli do przodu i w taki sposób jesteśmy coraz bliżej końca migracji.

A propos powoli, powoli szykujemy się do drugiej sesji testowej, bo lista zadań, które mamy do zrobienia nieustannie się kurczy 🙂

No ale o tym kiedy indziej.

Do następnego!

Read More

Nelderim DevBlog #61

Dwa tygodnie temu zdecydowaliśmy się nie publikować DevBloga, ponieważ większość naszego wolnego czasu pochłonęły inne obowiązki i sprawy poza ultimowe, ale już wróciliśmy do normalności i przychodzimy do was z kolejną garścią nowniek z ServUO i nie tylko

Testy, testy, testy

Pomimo niedoboru czasu, udało nam się utrzymać naszą systematyczność w cotygodniowych spotkaniach ekipowych i od ostatniego DevBloga udało nam się spotkać zgodnie z planem 4 razy.

11.07 przejrzeliśmy naszą tablicę zadań i wyodrębniliśmy te zadania, które wymagają funkcjonalnego Systemu Frakcji, zanim cokolwiek zaczniemy przy nich robić. Ustaliliśmy, że nadszedł w końcu czas, żeby dokończyć dokończyć implementację Frakcji.

17.07 odbyły się ostatnie testy i poprawki systemu zleceń. Obecnie wydaje się, że wszystkie nagrody i punkty są odpowiednio dobrane i możemy finalnie zamknąć ten temat i przejść do następnych zadań.

23.07 testowaliśmy system mini-champów (wspominaliśmy o nim w DevBlog#47), który miał zostać użyty do naszych custom championów, ale ze względu na pewne braki w funkcjonalności, zdecydowaliśmy się pozostawić je w oryginalnym systemie championów i dokodować kilka małych zmian, by wszystko współgrało z naszymi założeniami

30.07 przetestowaliśmy lwią część ostatnich zmian, a mianowicie:

  • odświeżenie kodu regionów, które miało też miejsce na RunUO
  • ustawianie się frakcji NPC na podstawie regionów
  • czy recalle dla Drowów działają w Podmroku, a nie działają dla innych ras
  • system morderstw w frakcji i poza frakcją
  • czy konto powiązane jest z frakcją po wyborze frakcji na pierwszej postaci
  • przeniesionych z RunUO strażników-pająki u Drowów
  • nowe bossy, które ostatnio wprowadzilismy na RunUO – Zhoaminth – zapomniane zło i Pancerny mechaniczny strażnik
  • Stuck Menu w zakładce Help
  • dodanie nowych miast do systemu miast

Nie wszystko działało zgodnie z założeniami, więc parę tasków mamy do poprawy, ale generalnie, znaczna większość przeszła do kolejki “Zrobione”.

Rework systemu NelderimRegion

Staramy się nie robić obecnie tzw. reworków partii kodu, ponieważ zazwyczaj dla was nie ma to żadnej różnicy, a jak przeszłość pokazuje, zaraz po zmianach jest nawet gorzej, ale zawsze jest to inwestycja na przyszłość.

Wszystko zaczęło się od tego, że chcieliśmy dołożyć do naszego systemu regionów, który rozszerza oryginalny system regionów, funkcjonalność, która miała nadawać frakcje dla NPC zależnie od miasta w którym się spawnuje.

Zadanie wydawaje się bardzo proste, ale ówczesny kod systemu dość mocno komplikował tą sprawę.

Toporny zapis i odczyt pliku z definicjami regionów, przestarzały format pliku definicji, totalnie zagmatwany kod, nieprecyzyjne nazewnictwo, czekało to na odświeżenie od dłuższego czasu i wreszcie się doczekało 🙂

Po pierwsze zamieniliśmy format XML na JSON i użyliśmy nowoczesnego sposobu zapisu opartego na tzw. refleksji. Sam format JSON jest dużo przystępniejszy w edycji, a odczyt pliku dzieje się w pełni samodzielnie i zajmuje całe 20 linijek kodu, zamiast oryginalnych 200+. Kod od zapisu został usunięty, bo powodował same problemy, dzięki czemu pozbyliśmy się kolejnych 200+ linijek 🙂

Wszystko czego dotykał NelderimRegion system zostało przejrzane i poprawione, kod został oczyszczony i ujednolicony, struktura konfiguracji została uproszczona i uporządkowana.

Nie obyło się oczywiście bez problemów z między innymi wydobywaniem surowców czy niewidzialnymi strażnikami, ale sytuacja wydaje się być opanowana po kilku małych fixach.

Jako zwieńczenie tej pracy zostało nam tylko wpięcie frakcji do regionów, co zajęło nam jakieś 15 minut, a następnie naprawienie kilku błędów, które nam jeszcze umknęły i NPC byli przypisani zgodnie z założeniem do konkretnych frakcji.

Było warto.

Podsumowanie

NPC z frakcjami z regionów było ostatnim elementem układanki, który był potrzebny abyśmy mogli uznać wstępna implementację systemu frakcji za gotową. Obecnie został nam do dokończenia jeden “duży” temat, czyli system osiągnięć, dość spora kolejka pomniejszych zmian i fixów i będziemy myśleć o kolejnej sesji testowej ServUO. No ale do tego to jeszcze trochę czasu 😉

Do następnego!

Read More

Nelderim DevBlog #60

Jak piąteczek, to DevBlog, a jak DevBlog, to grubaśny. Zasiądźcie wygodnie z kuflem zimnego pienistego lub z herbatką, jak kto woli, i wgryźcie się w ten soczysty kawał informacji na temat postępów w pracach.

Frakcje, ciąg dalszy

W DevBlog#17 i #18 pierwszy raz wspomnieliśmy o pomyśle frakcji. Trąbimy o nich od dawna, a sam pomysł zdołał już ewoluować od pierwszej wzmianki i nabrał już kształtów.

Obecny stan okodowanej części frakcji pozwala nam na wybór frakcji, gdy tylko nasza postać wyskoczy z Wyspy Początku do Komnaty Stworzenia. Wtedy to bowiem pojawi nam się gump, który wymusi na nas wybór.

Obecna wersja wygląda w ten sposób. Finalny produkt może zmienić swój wygląd.

Gdy wybierzemy sobie frakcję, a następnie, tak jak to do tej pory było, rasę (tutaj już przypisaną do konkretnej frakcji), będziemy mogli wyjść z Komnaty i eksplorować świat, tak jak to do tej pory miało miejsce. Jednakże, z pewnym wyjątkiem. Napotkanie członka “wrogiej” frakcji umożliwi nam zaatakowanie i zabicie go bez konsekwencji prawnych (ergo, straż nas za to nie zaatakuje).

Tak jest teraz
A tak będzie z frakcjami

Morderstwa nie będą naliczane za “usunięcie” delikwenta z innej frakcji. Za zabicie członka własnej frakcji zaś, już można nas zgłosić jako mordercę i, tak jak to ma miejsce teraz, po 5 morderstwach, otrzymamy status “reda” aka mordercy.

Co nowego przynosi ServUO

W DevBlog#45 i #55 poruszyliśmy temat nowych propsów, które pojawiają się wraz z nadejściem nowych Patchów na ServUO. Dziś przyjżymy się jednemu z nich:

“Soul Charge” (robocza nazwa: Naładowanie Duszy) – Ta właściwość (props) zamienia procent obrażeń zadanych graczowi w mane. Efekt ten można aktywować tylko raz na 40 sekund. Efekt aktywuje się samoistnie. Ta właściwość występuje tylko na tarczach.

Przykład z OSI

Prowadzenie za rączkę

Tutorial w UO? A komu to potrzebne? A po co to?

No właśnie. Potrzebne. Jeśli przychodził ktoś spoza Nelderim, czy też RunUO, np. z POLserver, miał ogromne trudności “przesiąść” się na nasz silnik, już nie wspominając o ludziach, którzy pierwszy raz włączyli UO.

Oprócz questów na “Wyspie Noobów”, które mają za zadanie przeprowadzić nas przez początki gry, zdecydowaliśmy się stworzyć gumpy, które będą informować o tym kto uczy danej umiejętności, czego potrzeba do jej wyćwiczenia i jak nauczyć się podstawowej obsługi NPC, jeśli chodzi o naukę skilli. Prowadzimy gracza za rączkę. Obecna wersja alpha oparta jest na regionach, które wywołują gump, gdy gracz wejdzie w dany region, ale po testach, okazało się, że to dość średni pomysł i należałoby zmienić metodę wywoływania. Mamy kilka pomysłów, o których będziemy informować w kolejnych DevBlogach.

Testy i kolejne zmiany

Testy, które odbyły się we wtorek 02.07.2024 pozwoliły nam przetestować wyżej wymienione rzeczy. Popchnęliśmy naprzód też inne pomniejsze zadania

  • sprawdziliśmy czy po przejściu z Wyspy Początku, gdy wylądujemy w Komnacie Stworzenia wywołuje się gump wyboru frakcji
  • sprawdziliśmy czy po wyborze frakcji, druga frakcja otrzymuje pomarańczowy kolorek nicku, który pozwala na zaatakowanie jej bez kary statusu kryminalisty, a po zabiciu, brak kary morderstwa
  • sprawdziliśmy wersję alpha gumpów opisujących umiejętności na Wyspie Początku
  • wpięliśmy nagrody za zlecenia łukmistrza ze starego customowego systemu z RunUO, do nowego oryginalnego
  • dodaliśmy kolorowe deski jako jedne z nagród, które można wybrać w systemie zleceń łukmistrza
  • sprawdziliśmy i poprawiliśmy (już ostatecznie, miejmy nadzieję) nagrody z nowego systemu zleceń, co zamyka cały duży temat systemu zleceń
  • przenieśliśmy z RunUO i sprawdziliśmy czy opóźnienie wprowadzone w miksturach eksplozji działa poprawnie
  • dodaliśmy HousingRegion (region, w którym gracze sami mogą stawiać domy) dla miast frakcyjnych
  • zbudowaliśmy kilka domów przy Orod, które gracze będą mogli sobie wynająć
  • przygotowaliśmy nowy system publicznych portali międzykontynentalnych, które zastąpią obecny system

Oto kilka screenów umilających tę ścianę tekstu 😛

Kiedy patrzycie na to samo, ale widzicie coś totalnie innego – Ultima Live czasem płata nam figle
Pimp my chałupa, wersja Orod, 1733, centredowane
I takie domy też mamy
Kolejny przykład opisu koxu skilla na Wyspie Początku (wersja alpha)
Wersja beta nowych portali publicznych

Podsumowanie

I to tyle na dziś. Mimo okresu urlopowo-wakacyjnego, staramy się pracować w pocie czoła, i to nie tylko dlatego, że jest gorąco.

Mamy nadzieję, że za 2 tygodnie dostarczymy wam równie soczystą porcję newsów odnosnie prac. Trzymajcie się cieplutko!

Read More

Nelderim DevBlog #59

Witajcie podróżnicy! Dzisiejszy DevBlog jest soczysty niczym schabowy Twojej mamy, więc usiądźcie wygodnie w fotelu i weźcie w rękę kubek herbaty czy innego napoju. Zapraszamy!

Postęp migracji

Ostatnio większość naszej pracy przy ServUO polega na drobnych poprawkach i szlifowaniu ogólnego doświadczenia z gry.

Gdy tylko mamy odrobinę czasu, to albo szukamy nowych błędów i niedoróbek, albo poprawiamy to co udało nam się wychwycić przy ostatniej iteracji.

Z ciekawszych błędów jakie napotkaliśmy był przypadek, gdzie gdy postać powiedziała zdanie ze spójnikiem ,,i”, to dostawaliśmy informacje o obecnym liczniku morderstw naszej postaci 😀

Było to spowodowane błędem w pliku ze słowami kluczowymi, co z kolei pokazało nam, że nie działa zrzekanie się statusu młodego, co postanowiliśmy rozwiązać w nowocześniejszy sposób zaprezentowany na obrazku poniżej.

Znaleźliśmy i naprawiliśmy również dość rzadki, lecz znaczący problem w rejestracji regionów, który objawiał się niepoprawnymi komunikatami w komnatach stworzenia.

Przy okazji wprowadziliśmy też niezliczoną ilość tłumaczeń, poprawek literówek, mniejszych i większych błędów w różnych systemach, między innymi w systemie języków oraz w zleceniach rzemieślniczych.

A propos tłumaczeń, udało nam się znacząco uprościć proces wprowadzania zmian w pliku z tekstami Cliloc, co powinno pozytywnie wpłynąć na tempo naszej pracy 🙂

Z ważniejszych tematów jesteśmy obecnie na końcówce dostosowywania nagród ze zleceń rzemieślniczych, a był tam ogrom pracy z tłumaczeniem wszystkich nazw oraz opisów, a także dostosowywania samych nagród do naszych oczekiwań.

Pozbyliśmy się też skillballi, których albo nie było widać w plecaku, albo gracze nie wiedzieli, że istnieją, które pojawiały się tylko dla postaci bez wybranej profesji, a do tego nie spełniały naszych bardzo niskich standardów Nelderim!

Zamiast tego postać od razu po pojawieniu się na świecie zostaje zamrożona oraz zmuszona do wypełnienia formularza postaci, gdzie ustala początkowe statystki oraz trzy startowe umiejętności na poziomie 50.0.

Sposób ten sprawdził nam się na tyle dobrze, że już teraz rozważamy podobne podejście, na przykład, żeby zachęcić graczy do wypełnienia opisu postaci, gdy nadejdzie na to odpowiedni moment 🙂

Więcej testów!!!

17.06.2024 odbyły się kolejne testy ServUO. Tym razem testowaliśmy zmiany, które wprowadziliśmy w systemie zleceń – nowe nagrody, tłumaczenia. Wyszło parę baboli, które wymagały poprawek. Kolejne testy tego systemu przewidujemy na następny tydzień.

Oprócz systemu zleceń, przetestowaliśmy (ponownie) ścieżkę nowej postaci. Tym razem upewniliśmy się, że po małych poprawkach, gumpy w regionach komnaty rasowej odpowiednio się wyświetlają. Dodatkowo sprawdziliśmy czy postać, która ląduje na Wyspie Początku ma 100% języka Powszechnego – uprzednio postać miała 0%.

Upewniliśmy się tez, że Championy Morskie (opisane w poprzednich DevBlogach), pozwalają na uzyskanie Taletnów (Skill Masteries), tak jak zwykłe Championy. Wszystko działa jak należy 🙂

Pozostałe pomniejsze rzeczy, które sprawdziliśmy, to:

  • wyzerowanie umiejętności nowej postaci niezależnie od wybranej profesji z panelu tworzenia postaci w kliencie ultimy
  • tłumaczenia w questach na Wyspie Początku
  • tłumaczenia w statkach
  • czy nowe okienko wyboru skilli pojawia się przy stworzeniu nowej postaci

Aktualizacja informacji odnośnie prac nad systemem zleceń

A jeśli już o zleceniach mówimy, to warto wspomnieć, że do nagród za zlecenia kucharza, skryby i alchemika będzie można dostać nowe przedmioty dekoracyjne.

Prace nad nagrodami z nowego systemu zleceń wciąż idą naprzód. Obecnie mamy zakończone nagrody ze zleceń kowalskich, które nie wymagały zmian, krawieckich, które wymagały przeniesienia nagród z RunUO, kucharskie, które wymagały kilku modyfikacji oraz dodania nowych nagród jak i zlecenia skryby, które wymagały dodania kilku nowości. Zlecenia stolarskie oraz majstra zostały właśnie dokończone – tam musieliśmy dodać sporo nagród: PSy, starożytne narzędzia, surowce. Zlecenia alchemiczne są w trakcie przeróbek – musimy dodać kilka nagród: przedmioty dekoracyjne oraz PSy i rękawice z bonusem do umiejętności. Zaś zlecenia łukmistrza musimy dobrze spiąć z istniejącymi customowymi zleceniami z RunUO – tutaj będzie najwięcej pracy.

Co nowego przynosi ServUO?

Tym razem całkiem przypadkiem natknęliśmy się na nowy rodzaj championa, mianowicie Khala Ankura. Posiada on własny altar championa, w którym musimy pokonywac kolejne fale, natomiast przed walką z samym Khalem powstrzyma nas jego straż! Póki nie zabijemy wszystkich strażników Khal Ankur będzie nie do zabicia.

Oryginalnie Khal może uraczyć nas w swoim cielsku dwoma ciekawymi artefaktami, które dodatkowo posiadają ładunki umożliwające wystrzelenie specjalnego meteorytu w kolorze niebieskim. Sami jeszcze nie wiemy czy przedmioty pozostaną niezmienione oraz gdzie go ulokować, ale wszystko to już po migracji!

Podsumowanie

DevBlog, który właśnie przeczytaliście obfitował w informacje na temat nowości i poprawek, które wprowadziliśmy w ostatnim czasie. Jesteśmy już coraz bliżej otwartych testów.

Do następnego !

Read More

Nelderim DevBlog#58

Ostatnio wydarzyła się rzecz nieszablonowa, ponieważ zdecydowaliśmy się pominąć ostatnie wydanie DevBloga.

Sytuacja była spowodowana najzwyczajniej niedoborem wolnego czasu i zdecydowaliśmy się odłożyć publikacje o kolejne dwa tygodnie niż publikować byle co na siłę.

Mamy nadzieję, że już więcej się to nie powtórzy, a teraz zapraszamy was do lektury.

Sesje testowe

Ostatnie sesje testowe, które odbyły się 16.05.2024, 22.05.2024 oraz 05.06.2024 pozwoliły nam na sprawdzenie zmian, które wprowadziliśmy w ostatnim czasie oraz przetestować systemy skrzynek skarbów, które są oryginalnie zaimplementowane na ServUO.

Podczas testów 16.05.2024 potwierdzaliśmy, że nasze poprawki działają tak ja należy, miedzy innymi:

  • przepisane na nowy system ACC czary mrocznego rycerza
  • aura feniksa z wbudowanego mechanizmu efektow obszarowych
  • czy serwer nadal crashuje przy kopaniu rudy
  • czy Scroll Of Transcendence leci z odpowiednimi wartościami (+0,1 do +0,3)
  • czy przeniesiona zmiana z RunUO, gdzie gdy posiadamy Zatruwanie i Magię, to przy czarowaniu żywiołaka powietrza, potrafimy wyczarować żywiołaka trucizny, działa poprawnie
  • czy tytuł stolarza poprawnie się wyświetla (brakowało myślnika)
  • czy odpowiednio dostosowaliśmy punkty za zlecenia myśliwskie, które zostały wpięte do nowego systemu zleceń
  • czy przedmioty specjalne pojawiają się zgodnie z przypisanym do nich mobem
Testowaliśmy zlecenia małe, duże oraz na bossy
Tak teraz będzie wyglądać księga Mrocznego Rycerza – posiada możliwość ustawienia hotkeya w grze za pomocą [csscast oraz opis w zwoju widocznym przy danym czarze
No i pamiętajcie. Nie przesadzajcie z ekspozycją swego Męstwa, bo to crashuje serwer 😉

Testy, które miały miejsce 22.05.2024 wyjątkowo poświęciliśmy na sprawdzenie głównie lootu ze skrzyń z map skarbów, Rybactwa i paragonów w celu zweryfikowania zmian jakie OSI poczyniło oraz natężenia lootu, ale na to poświęciliśmy osobny rozdział w DevBlogu.

Skrzynki z map skarbów zmieniły swój wygląd.
Paragon chest zachował swój oryginalny wygląd i opis

Oprócz skrzynek testowaliśmy ponownie system dział na statkach i sprawdzaliśmy tłumaczenia. Kilka z nich jest do poprawy, kilka do dodania, ale w zasadzie system jest prawie gotowy do podania.

SoSy wyglądają jak nowe skrzynie skarbów, ale Ancient SoSy wyglądają tak samo jak na RunUO

05.06.2024 miały miejsce testy początkowej ścieżki nowego gracza. Zrobiliśmy sobie nowe postacie. Wylądowaliśmy na Wyspie Początku, którą już przetestowaliśmy w DevBlog#50. Następnie, portalem przeszliśmy do Komnaty Stworzenia, gdzie sprawdziliśmy czy:

  • po wybraniu odpowiedniej rasy otrzymujemy język rasowy na 100%
  • czy teksty się dobrze wyświetlają
  • czy teleporty do miast działają odpowiednio

Następnie udaliśmy się do NPCów w mieście i sprawdzaliśmy, niczym Morawiecki za rządów PiSu, czy ceny w sklepach są odpowiednie oraz czy ilości towarów się zgadzają. Zauważyliśmy, że brakuje trochę tłumaczeń oraz jest trochę nierówny rozkład ilości i cen towarów, więc będzie trzeba wprowadzić pewne poprawki.

Skrzynie skarbów

O mapach pisaliśmy trochę w DevBlog#12, ale dziś rozwiniemy temat.

Ważna aktualizacja w Publishu 105 na wiosnę 2019 r. zmniejszyła liczbę poziomów mapy z 7 do 5. Ponadto motywy skrzyń skarbów zostały teraz oparte na następujących pakietach inspirowanych profesjami:

  • Rzemieślnik
  • Morderca
  • Mag
  • Leśniczy
  • Wojownik

W wyniku tego powstanie mapa o następującej treści: „Mapa postrzępionych skarbów prowadząca do skarbca maga”
Istnieją również trzy cechy skrzyni: zardzewiała, znajomy normalny metal lub złoto. Jakość skrzyń jest określana w momencie kopania w oparciu o zmodyfikowane umiejętności kartograficzne kopacza przy pierwszym pomyślnym wykopaniu skrzyni. Jeśli zdecydujesz się wymusić ponowne przeciągnięcie skrzyni (tj. przesunięcie), jakość nigdy nie będzie lepsza niż przy pierwszym pociągnięciu, ale może być gorsza, jeśli twoje umiejętności kartograficzne są niższe niż przy pierwszej udanej próbie.

Przy otwieraniu skrzyń na ServUO będzie liczyć się Luck postaci otwierającej skrzynię.

(nazwy pochodzą z OSI, nasze mogą się nieco różnić)

Więcej szczegółów na temat tych mapek znajdziecie na stronie uo.com, jednakże, pamiętajcie, że finalnie informacje, które tam znajdziecie nie muszą odzwierciedlać tego co znajdziecie u nas.

Zatopione skarby

Tutaj nie nastąpiły żadne drastyczne zmiany. OSI jedynie dodało kilka dekorów, rzadkich składników oraz składników do Imbuingu, które na początku wyłączymy, gdyż sprawa Imbuignu musi być dobrze przedyskutowana i przetestowana.

Skrzynie Paragonów

System skrzyń z Paragonów nie uległ zmianie. Będzie działać na tych samych zasadach jak działa na RunUO. Jeśli zaś chodzi o natężenie propsów w przedmiotach w owych skrzyniach, w naszym mniemaniu jest nawet niższe i prawdopodobnie trzeba je będzie podkręcić.

Statki i okręty

Podczas ostatnich dwóch tygodni po zabawie w poszukiwaniu zatopionych skarbów, postanowiliśmy przy okazji popływać chwilę okrętami i sprawdzić ich funkcje. Wspominaliśmy o nich w DevBlog#4 oraz DevBlog#41 więc jeśli jeszcze ich nie czytaliście to zapraszamy do lektury! Same okręty działają prawidłowo, niektóre menu wymagają tłumaczeń lub poprawek tłumaczeń. Konieczne jest zróżnicowanie nazw kuli armatnich, które obecnie w większości kryją się pod jedną nazwą bez rozróżnienia na ich rodzaj. Dodatkowo odkryliśmy farby do okrętów (więcej tutaj), które zakupić można u malarza łodzi. Statek można pokryć jednym z ośmiu kolorów, te zaś będą blaknąć, a po upływie dwóch tygodni, statek wróci do podstawowej barwy. Aby nałożyć inną farbę lub usunąć kolor można użyć zmywacz do farby. Możliwe, że na Nelderim farby te wytworzyć będzie mógł alchemik.

Kolory farb do pokładu

Stworzyliśmy również imitację bitwy morskiej. Strzały z armat ulokowanych na okrętach mogą ranić zarówno statki piratów, innych graczy jak i morskich bossów i championów. Zadawanie obrażeń wrogiemu okrętowi spowoduje utratę wytrzymałości statku, co za tym idzie będzie on mógł pływać wolniej aż do całkowitego zatrzymania. Statek w każdej chwili można naprawić, lecz zajmuje to kilka minut. Poniżej przedstawiono galeon pomalowany niebieską farbą do łodzi, który rozstrzelał inny okręt.

Podsumowanie

Ostatnio nasza uwaga jest bardziej skupiona w stronę szlifowania pomniejszych elementów serwera, aniżeli implementacji nowych wspaniałych systemów, co wiąże się z tym, że DevBlogi nie są aż tak spektakularne jak mogłyby być, jednakże oznacza to również że obecny stan serwera jest już w zadowalającym stanie.

Do następnego!

Read More

Nelderim DevBlog #57

Okres majówkowy na szczęście już za nami, bo kusiło wszystkich wszystkich do wycieczek i co gorsza wychodzenia z domu.

Część ekipantów również uległa pokusie wyjścia z domu i odpalenia grilla, także dzisiejszy DevBlog będzie odrobinę skromniejszy 😉

Postępy prac

Ostatnio wspominaliśmy o trwającej sesji testowej dla Patronów i sesja ta zakończyła się bez żadnych krytycznych problemów, co samo w sobie jest dość sporym sukcesem.

Oczywiście problemy mniejsze i większe były, ale sesje testowe mają właśnie takie błędy wyłapywać, i zdecydowanie wpłynie to na mniejszą ilość niedociągnięć gdy przepniemy się na nowy serwer.

Jako chyba największy sukces z ostatnich dwóch tygodni, nareszcie udało nam się dokończyć kwestię, która zaczęliśmy już bardzo dawno temu, jednakże brakowało nam trochę wiedzy, doświadczenia i determinacji podczas poprzedniego podejścia do tego tematu.

Otóż udało nam się nareszcie przenieść całkowicie ServUO na .NET 8!

Do tej pory było to odrobinę zagmatwane, ponieważ kod był kompilowany z użyciem .NET 8 SDK, ale do programu wynikowego w .NET Framework 4.8, a środowiskiem uruchomieniowym na obecnym oraz testowym serwerze jest/było Mono.

Po wprowadzonych zmianach wszystko dzieje się z użyciem .NET 8, co na pewno daje nam dużo łatwiejsze analizowanie błędów, teoretycznie powinno skutkować zwiększoną wydajnością, a także otwiera nam pewne nowe możliwości np. rekompilowanie skryptów bez restartu serwera.

W międzyczasie udało nam się wprowadzić kilka poprawek wydajnościowych, usunąć całkiem sporo kodu zależnego od skonfigurowanego dodatku ( co nie ma sensu na naszym serwerze), a także wstępnie przepisać system Mrocznego Rycerza, aby dopasować go do naszego obecnego systemu umiejętności specjalnych, co pozytywnie wpłynie na utrzymywanie kodu w przyszłości.

Jako mniej techniczny dodatek, możemy powiedzieć, że oficjalnie ruszyło planowanie w jaki sposób połączyć obecną fabułę z fabułą zaplanowaną na ServUO, no ale o tym dowiecie się pewnie niedługo na wydarzeniach w grze 🙂

Co nowego przynosi ServUO

ServUO, oprócz nowości mechanicznych, przynosi nam też większe możliwości dostosowania wyglądu naszego awatara. Dzięki patchowi ToL, Publish 106, uzyskujemy dostęp do 3 nowych wyglądów pasa:

Pas na sztylety
Pas z maczugą
Pas z krótkim mieczem

To tylko inny wygląd. pasy nie mają żadnych właściwości i będzie można je wytwarzać za pomocą umiejętności Krawiectwo. Aby je wytwarzać, na OSI, należy wejść w posiadanie receptury na wytworzenie takowego pasa. Scalis – pozwala na pozyskanie receptrury na pas z maczugą, Corgul – na pas z krótkim mieczem, a Charybdis – na pas ze sztyletami.

Podsumowanie

Jak widać majówkowe lenistwo odbiło się na ilości materiału w dzisiejszym DevBlogu, ale nie zawsze musimy was totalnie zanudzać ogromnymi ilościami zmian i samego tekstu.

Powoli kończą nam się też istotne nowości z ServUO oraz nowszego patcha, ale postaramy się jeszcze parę rzeczy wygrzebać 😉

Do następnego!

Read More

Nelderim DevBlog #56

Ostatnie dwa tygodnie były dla nas bardzo intensywne, jeżeli chodzi o prace nad migracją serwera.

Udało nam się wprowadzić bardzo wiele zmian, nasi budowniczowie prężnie działają nad mapą, co przy okazji zaserwowało nam niezłą łamigłówkę, a co najważniejsze, wpuściliśmy na serwer testowy garstkę osób spoza ekipy!

Ale zanim przejdziemy do punktu programu, przeczytajcie co nam się wydarzyło podczas prac nad mapą…

Edycja mapy i CentrED#

Ciągle rozwijana wersja naszego CentrEDa przyprawiła naszych budowniczych o niemały zawrót głowy. Jedna z opcji, która służy do ukrywania niektórych elementów mapy, w tym przypadku do ukrywania wszystkich postawionych na mapie staticów, czyli obiektów nie będących terenem, nie zadziałała tak jak powinna.

W starszych wersjach CentrED, wszystko czego nie widzimy poprzez zastosowanie filtrów, nie mogło zostać edytowane. Nasz program postanowił zrobić nam psikus i nie zadziałać tak jak tego oczekiwaliśmy

W rezultacie, podczas nakładania faktury terenowi, by nie był zupełnie płaski w zakresie wysokości od -1 do 1 zmieniono parametr Z wszystkich znajdujących się na edytowanych połaciach terenu staticów (jedynie pierwszą napotkaną warstwę). Wynikiem tego są efekty przedstawione poniżej, “popękane” dachy, przesunięte względem siebie ściany, zmieniona wysokość roślinności na danym obszarze oraz innych dekoracji.

“Popękane” dachy

Ręczna naprawa zaistniałego stanu wydała się syzyfową pracą, dlatego też szukaliśmy szybszego rozwiązania. Wgranie backupu okazało się słabym pomysłem, ponieważ jeden zapis został stworzony już po fakcie, natomiast poprzedni ponad 2 tygodnie wcześniej.

Zmienna wysokość ścian budynku

Wpadliśmy na pomysł wykorzystania programu do kopiowania fragmentów mapy, który umożliwia przeniesienie jedynie staticów, bez przenoszenia terenu. Dzięki temu przenieśliśmy cały obszar wyłączając teren, co pozwoliło zachować wykonane na nim prace, jednocześnie naprawiając zaistniałą sytuację przeniesionymi staticami z innego zapisu.

Nauczeni na błędach zautomatyzowaliśmy proces tworzenie zapisów co 4 godziny, a sam CentrED otrzymał stosowną poprawkę.

Kolejny kamień milowy migracji ServUO!

Zaraz po opublikowaniu ostatniego DevBloga, zdążyliśmy tylko chwilę się zdrzemnąć i zaczęliśmy wprowadzać zmiany ustalone podczas ostatniej sesji testowej.

Pokręciliśmy trochę parametrami od Loot i Difficulty zgodnie z naszą intuicją, wprowadziliśmy kilka mniejszych poprawek i dnia 16.04 przystąpiliśmy do kolejnej sesji testowej.

Po rozprawieniu się z początkowymi problemami technicznymi, sesja testowa obyła się bez większych problemów i byliśmy bardzo zadowoleni z efektów.

Wskaźnik Difficulty na potworach był zgodny z naszymi oczekiwaniami, Loot również nareszcie pokrywał się z tym czego oczekiwaliśmy, naprawiliśmy prędkość potworów i dało się normalnie grać.

I właśnie to, że dało się normalnie grać, skłoniło nas do podjęcia decyzji, że serwer jest na tyle dopracowany, że jesteśmy gotowi, aby ktoś spoza Ekipy na własnej skórze doświadczył co oferuje ServUO w obecnej formie.

Zaproponowaliśmy taką możliwość naszym Patronom i po wstępnym entuzjazmie, rozpoczęliśmy wielki sprint ServUO, żeby serwer testowy był w jak najlepszym stanie na przybycie Patronów.

W ciągu 5 dni, wprowadziliśmy łącznie 66 zmian, które uzbierały się na naszej tablicy i były to przeróżne poprawki, od ważnych kwestii wydajnościowych, poprzez mniejsze modyfikacje, aż po elementy wizualne i tłumaczenia.

Jedną z ważniejszych poprawek było to, że udało nam się wreszcie namierzyć jeden z problemów z wydajnością ServUO, co było spowodowane błędem w oryginalnych plikach gry!

Problem polegał na tym, że niektóre ‘bloczki’ posiadały niepoprawną wysokość, przez co postacie nie mogły się poruszać w niektórych miejscach, a co gorsza, nasze spawnery nie były w stanie nigdzie umieścić nowych potworów, poddawały się po 20 próbach znalezienia odpowiedniego miejsca, a w następnym cyklu próbowały podobnie, co wyciskało ostatnie soki z naszego serwera testowego.

Postać lewitująca nad bloczkiem ze zbyt dużą wysokością

Społeczność ServUO oraz ‘gildia twórców map’, nie były w stanie nam pomóc rozwiązać tej zagwozdki, więc przywróciliśmy niektóre wartości, do tych, które są na obecnym kliencie i uznaliśmy problem za rozwiązany 🙂

Zmiany które udało nam się wprowadzić podczas sprintu to między innymi:

  • sprawdziliśmy czy destylatory są wpięte w menu wyrobów crafterskich (opisane były tutaj)
  • przetestowaliśmy czy ruda/drewno nam nie przepada, jeśli wydobywamy surowiec z pełnym plecakiem: obecnie nie będziemy tracić surowców
  • wyrównaliśmy ilość surowców, które wydobywane są na ServUO z tą, która jest wydobywana na RunUO
  • przenieśliśmy artefakty-nagrody świąteczne za rok 2023 z eventu
  • zmniejszyliśmy przyrost cnót
  • przetłumaczyliśmy opisy przedmiotów w celu łatwiejszej identyfikacji czy przedmiot jest mocny czy nie (np. Pomniejszy Magiczny Przedmiot)
  • przenieśliśmy efekt otrzymania artefaktu z RunUO
  • przepieliśmy talizmany na oryginalne talizmany z ServUO
  • sprawiliśmy tamowalne stwory nie będą skalowane przez system skalowania mobów
  • wyłączyliśmy drop czarów Druidyzmu z loot
  • na wyspie startowej w New Haven, wszystkie moby będą miały dopisek “Bardzo słaby” i będą odpowiednio skalowane
  • naprawiliśmy zawieszające się AI mobów czarujących.
  • wprowadziliśmy poprawki w strażnikach, które w konsoli pokazywały nam ostrzeżenia
  • poprawiliśmy mapowanie AI mobów z RunUO do ServUO
  • poprawiliśmy rozjeżdżający się tekst w księdze zaklęć Mnicha
  • Nagrody ze zleceń myśliwskich zostały wpięte w nowy system zleceń
  • wprowadziliśmy zmiany w przerwach między braniem zleceń: będzie można wziąć 3 zlecenia pod rząd, po czym należy odczekać 3h
  • wprowadziliśmy poprawki w skalowaniu trudności potworów oraz w priorytetach regionów
  • ograniczyliśmy drop talentów z Championa do jednej sztuki (opisane tutaj)
  • przenieśliśmy Pack Instinct Ilthara oraz Skorpiona Królewskiego z RunUO
  • Przenieśliśmy worek do przechowywania regów z RunUO
  • przenieśliśmy Szachy Bojowe z RunUO
  • przenieśliśmy zakrwawione bandaże z RunUO
  • przetłumaczyliśmy gump treningu petów

Na sam koniec przygotowaliśmy gotową paczkę z nowym klientem, nadaliśmy dostęp Patronom i 22.04 uruchomiliśmy serwer testowy.

Dość szybko Patroni pokazali nam problem w systemie regionów, widoczny najbardziej u drowów, zaprezentowany na wycinku poniżej 🙂

Z istotnych problemów, było kilka crashy, które zostały od razu załatane, a także udało się wykryć dość specyficzny problem w leczeniu bandażami leżący gdzieś pomiędzy ServUO, a Razorem, który po wielu testach i próbach udało się ostatecznie poprawić w kodzie serwera.

Oprócz testów przeprowadzanych przez Patronów, 24.04 zrobiliśmy również ekipową sesję testową mająca na celu ostateczne pozamykanie ostatnich poprawek.

Oczywiście, nie obyło się bez niespodzianek, ponieważ podczas testów dropu Scrolls of Transcendence, serwer bez widocznego powodu zaczął strasznie lagować i taki stan utrzymywał się przez około 10 minut.

Nie wiemy jeszcze dlaczego tak się stało, ale już przygotowujemy się, żeby się tego dowiedzieć, jeżeli wydarzy się to ponownie.

Na sam koniec, poprosiliśmy jeszcze patronów o 2-3 zdania po tych kilku dniach z ServUO i oto co mają do przekazania:

Testy trwają jeszcze kilka dni, więc zanim podejmiemy kolejne kroki, musimy jeszcze trochę poczekać, ale już teraz możemy obiecać, że będzie jeszcze co najmniej jedna sesja testowa, dostępna dla wszystkich.

Podsumowanie

Baaardzo dużo się ostatnio działo, ale widać, że są tego konkretne efekty.

To że część graczy miała wolny dostęp do serwera testowego przez kilka dni i nie zakończyło się to totalną porażką z naszej strony, pokazuje nam, że to co robiliśmy przez ostatnie dwa lata, nie było bezcelowe.

Przed nami wciąż ogrom pracy, ale to jest ten moment, kiedy możemy już całkowicie poważnie mówić o migracji na nowy silnik w niedalekiej przyszłości i możemy przełożyć więcej naszej z pracy z RunUO na ServUO.

Do następnego!

Read More

Nelderim DevBlog #55

Od ostatniego DevBloga niezbyt wiele się zmieniło, ponieważ my wciąż próbujemy okiełznać nowy system Loot, jednakże z dnia na dzień idzie nam to coraz lepiej i z każdej sesji testowej wyciągamy kolejne wnioski.

Bez zbędnego przedłużania, przejdźmy do konkretów 🙂

Postępy prac

Pierwsza sesja testowa, mająca głównie sprawdzić inną konfigurację systemu gradacji potworów pokazała nam, że sam rozkład potworów jest odczuwalnie lepszy, jednakże kolejnym wnioskiem było to, że wartość lootu, która bezpośrednio odwzorowuje też trudność potwora, nie zawsze pokrywała się z naszymi oczekiwaniami i potrzebowaliśmy możliwości wglądu w konkretne cyferki decydujące o trudności potworów.

Tak oto serwer został wyposażony w opcję podglądania niektórych wartości po najechaniu na potwora kursorem i już samo to pozwoliło nam wykryć pierwsze problemy, a zarazem wytłumaczyło, dlaczego z niektórych potworów loot był okropnie mizerny.

Ujemna wartość ‘życia’ potwora nie wróży nic dobrego.

Chcąc móc głębiej spojrzeć co się dzieje, stworzyliśmy widok szczegółowy, który pokazuje wszystkie brane pod uwagę współczynniki i od razu w trakcie testów możemy wychwycić co jest nie tak i co wymaga zmiany.

Uzbrojeni w dodatkowe narzędzie przystąpiliśmy do kolejnych testów i pomimo początkowych problemów technicznych sesję zakończyliśmy z dość pokaźną listą notatek i spostrzeżeń.

Część potworów jest wyceniana zbyt słabo, cześć zbyt mocno, niektóre potwory są w punkt, ustaliliśmy, że MagicResist ma obecnie zbyt duży wpływ na Difficulty, spisaliśmy również listę propsów, które pojawiają się na przedmiotach, a według nas nie powinny (SwingSpeedIncrease na bizuterii na przykład).

Postanowiliśmy też, że trzeba w końcu naprawić problem z prędkością potworów, opisany 2 DevBlogi temu, ponieważ zaburza to wyniki testów.

Ogólnie loot wydaje się być w porządku względem konkretnych wartości współczynnika, z tym, że obecnie słabsze potwory dają według nas zbyt dużo złota i musimy jeszcze trochę w tej kwestii pokombinować.

Jako dodatek zauważyliśmy, że szkoły magii jak Rycerstwo albo Skrytobójstwo u potworów działają obecnie bardzo dziwnie i musimy się temu przyjrzeć.

Co nowego przynosi ServUO

W DevBlog#15 opisywaliśmy nowego championa Dragon Turtle (Smoczego Żółwia). Dziś postanowiliśmy napisać kilka słów na temat specjalnych skór, które można z niego pozyskać.

A więc, po zgładzeniu tej potężnej bestii, możemy wyciąć z niej specjalne skóry, które można wykorzystać do stworzenia specjalnej zbroi.

Tak wyglądają te skóry po wycięciu

Bazowe propsy takiej skórki wyglądają w ten sposób:

Jak widzicie, zbroja nadaje się dla postaci z Medytacją

Co można z nich zrobić?

Można z nich wykonać cały komplet skórzanej zbroi składający się z 4 części: tunika (wersja damska i męska), nogawice, hełm, naramienniki

Tak wygląda cały komplet:

Podsumowanie

I na tym zakończymy dzisiejsze wypociny.

Nowy system Loot zaczyna już całkiem nieźle działać, rozszerzony system Difficulty wymaga jeszcze paru korekt, system gradacji trudności potworów sprawdza się znakomicie (napis ‘Potężny Prastary Yomotsu’ wywołuje u nas gęsią skórkę), systematycznie tłumaczymy wszystko co uda nam się odnaleźć, w skrócie, pracę powoli idą do przodu 🙂

Do następnego!

Read More

Nelderim DevBlog #54

Witamy was serdecznie w tym dość skromnym DevBlogu.

Skromnym, ponieważ poruszymy tylko jeden temat, jednakże temat ten jest chyba jednym z najbardziej istotnych i poświęcamy mu bardzo wiele czasu i uwagi.

Testy, testy, testy, loot…

Nasza cała uwaga skupia się ostatnio na tym, żeby system loot był odpowiednio zbalansowany i jest tutaj dużo liczenia, wpisywania w excela, kombinowania i zgadywania.

A jest to dość skomplikowane zadanie, ponieważ próbujemy pogodzić ze sobą system wyliczania trudności potworów (Difficulty), system gradacji trudności potworów (DifficultyLevel) oraz nowy system Loot dostępny na ServUO, tak żeby efekty były zbliżone do tego co obecnie oferuje nasz serwer.

Każdą zmianę staramy się wspólnie testować i oceniać co jest dobrze, a co jest do poprawy i jak chcemy to poprawić.

Przez ostatnie 2 tygodnie udało nam się zrobić dwie takie iteracje, a spodziewamy się jeszcze conajmniej kilku.

Pierwsza sesja testowa, przeprowadzona po wyłączeniu szansy na bardzo potężne przedmioty z każdego potwora i po dość ostrym przykręceniu kurka od loot przebiegły bez żadnych niespodzianek.

Zdobywane przez nasz przedmioty były dość przewidywalne, jednakże zgodnie ustaliliśmy, że kurek został przykręcony zbyt bardzo, ponieważ po pokonaniu całego dungeonu z mini bossem na końcu, nie udało nam się zdobyć ani jednego przedmiotu, który byłby jakkolwiek przyzwoicie nasycony włąsciwościami, a ponadto ilość zdobytego złota nie pozwoliłaby nawet jednej postaci na pełne ubezpieczenie.

Dodatkowo testy te miały być pierwszymi z włączonym systemem gradacji potworów, ale system ten okazał się być niefunkcjonalny z powodu błędu.

Podnieśliśmy współczynniki loot, naprawiliśmy system gradacji poziomu trudności i przystąpiliśmy do kolejnych testów.

System gradacji poziomu trudności zaczął działać i pierwsze nasze odczucia są pozytywne, jednakże tym razem trochę przesadziliśmy z lootem w drugą stronę.

Okazało się, że przeskalowane potwory, potrafiły wygenerować bardzo mocny loot, złota było tyle, że przestaliśmy już je zbierać, a dodatkowo sama końcówka dungeonu okazała się być przesadnie trudna i musieliśmy się wesprzeć komendami GM, żeby dotrzeć do końca, a testowanym dungeonem był Lochy Ophidian, czyli raczej co najwyżej średnia półka trudności.

Wyciągnęliśmy wnioski, wstępnie już osłabliśmy trochę loot na następne testu, spróbujemy trochę inaczej skonfigurować system gradacji mobów(żeby bardzo silne potwory były rzadkością, a nie na każdym kroku), a także przyjrzymy się jak skalowanie siły potwora wpływa na samą wartość Difficulty, bo na oko wygląda to podejrzanie.

Ale o tym i innym następnym razem 🙂

Co nowego na ServUO?

Wyrm Cienia da się oswoić? No, będzie się dał oswoić. W Publishu 97 z roku 2017 możemy się dowiedzieć, że znany nam od dawna wyrm cienia, który obecnie był jedynie obiektem zleceń myśliwskich, będzie stworzeniem oswajalnym na ServUO. Będzie go również mozna wytrenować za pomocą treningu zwierząt. Jego bazowe statystyki nie zmieniają się względem oryginału. Jego bazowe umiejętności specjalne to FireBreath oraz odporność na trucizny 4 poziomu.

Podsumowanie

Kolejne zmiany oraz kolejne testy nadchodzą, wiec możecie trzymać kciuki, by tym razem udało się nam dobrze odkręcić kurek.

Dzięki za uwagę i do następnego!

Read More

Nelderim DevBlog #53

W dzisiejszym odcinku będzie trochę o mapie, trochę o loot, trochę o istotach, trochę o treningu, czyli wszystkiego po trochu, zatem bez przedłużania, zapraszamy do lektury.

CentrED#

Trochę udało nam się ostatnio udoskonalić nasz edytor map o funkcjonalność, która jest chyba jedną z najbardziej wyczekiwanych.

Chodzi o tzw. Land Brush, w dosłownym tłumaczeniu Pędzle Terenu i jest to narzędzie, które ogromnie wspiera edytorów map podczas edycji podłoża.

Wszyscy pewnie wiedzą, że mapa składa się z kafelków, ale jeżeli ktoś nigdy nie pracował z mapą, to nie wie, jak bardzo żmudnym procesem jest dostosowanie przejść pomiędzy różnymi typami terenu.

W starym CentrEDzie wszystkie przejścia i zakamarki trzeba było ręcznie dostosowywać i stworzenie nawet prostej ścieżki z ziemi na trawie wymagało bardzo dużo pracy i obycia z narzędziem.

CentrED+ co prawda posiadał tą funkcjonalność, ale my nigdy nie używaliśmy tej wersji edytora ze względu na ogromne problemy ze stabilnością.

Poprawny kawałek ziemi z pędzla i pełny kafelek, który wygląda nienaturalnie
Tutaj widok z siatką, gdzie widać że kawałek ziemi składa się z 4 kafelków

Land Brush w pełni automatyzuje ten proces i pozwala edytorom po prostu tworzyć, a wszystkie detale zostaną dodane automatycznie.

Zwróćcie uwagę jakie kafelki tworzą krawędzie drogi

Oczywiście opcja wstawiania pojedynczych kafelków też jest dostępna, jeżeli ktoś nie będzie zadowolony z dobrodziejstw automatyzacji 🙂

Loot i testy

Sporo czasu poświęcamy ostatnio testom systemu loot oraz treningu petów. 06.03.2024 Maupishon i kaczy testowali wstępnie w małym gronie drop artefaktów z paragonów oraz system loot. Podczas testów okazało się, że przedmioty jakie nam wypadają są dość mocne, a nawet ze zwykłego szczura potrafi polecieć czapka suma resów 90 i 3 propsy.

14.03.2024 odbyliśmy już testy w większym gronie: Levy, NBlades, kaczy i Maupishon. Tutaj testy loot i treningu petów przebiegły bardziej naturalnie, gdyż zwyczajnie poszliśmy na dungeony i zwracaliśmy uwagę na to jakie i ile tych fajnych przedmiotów poleci po tym, jak kaczy przykręcił propsowy kurek.

Zrobiliśmy cały wulkan i wypadł 1, może 2 przedmioty godne uwagi. W tak zwanym międzyczasie, serwer padł nam (tylko!) raz i okazało się, że jest problem z prędkością mobów. Mianowicie, wyłączyliśmy wyliczanie prędkości na podstawie DEX, co wewnętrznie nazywa się SpeedInfo. Po zmianach okazało się, że każdy ze zwierzaków biega, jakby wciągnął 3 worki mąki od lokalnego młynarza i spalił 30 sztuk tytoniu szlachetnego aromatyzowanego cytrynami. Innymi słowy, pety miały ustawione najwyższą możliwą prędkość poruszania się i podejrzewamy, że jest to obecnie problem z wczytywaniem zapisu po deaktywacji SpeedInfo.

A potem poszliśmy na Wielką Pokraczną Bestię, ale w momencie przejścia na 2lv okazało się, że kaczy przeniósł dungi z Malas na Felucca, tylko spawnery nie są przepięte haha

Jako, że jeszcze nie mieliśmy dość, a nasze naspeedowane pety pozwalały na grę na auto-pilocie, poszliśmy sprawdzić loot i kox petów w Garth. Udało się zrobić dung i wyniki odnośnie lootu były podobne. Znikoma ilość ciekawych przedmiotów. Kaczy będzie musiał odkręcić trochę nasz propsowy kurek i kolejne testy odbędą się za tydzień.

Co do koxu petów. Wydaje się, że jest to teraz zrobione z głową. W przeciągu około 2h gry udało się wbić nam 25-50% paska postępu koxu, więc zdaje się, że jest ok. Jeszcze po poprawkach prędkości mobów/petów sprawdzimy czy wtedy nie idzie to dużo wolniej.

Co nowego przynosi ServUO

“Chrońcie mnie!”

Komenda “chrońcie mnie/brońcie mnie” działa u nas na RunUO w sposób taki, że jak nas coś zaatakuje, to nasz pet poleci na cel, który nas atakuje. Dzięki zmianom jakie poczyniono na silniku ServUO, działanie tej komendy zmienia się, naszym skromnym zdaniem, na lepsze. Mianowicie, dodatkowo do funkcjonalności, którą obecnie mamy, dorzucono atak naszego peta na cel, na którym my wykonamy niekorzystną akcję.

Podsumowanie

Nieustannie, gdy tylko mamy trochę wolnego czasu dokręcamy ServUO i moment pierwszego testowego UPa jest już zdecydowanie na horyzoncie.

Nie możemy się już doczekać, gdy testowy serwer wystartuje, a potem będziemy musieli załatać wszystkie znalezione przez was błędy 😅

Do następnego!

Read More

Nelderim DevBlog #52

Witajcie przybysze! Oto świeżutki i soczysty DevBlog, który wjeżdża dziś, z jednodniowym opóźniem, jednakże, zapewniamy, że warto było czekać, bo mamy spooooorą dawkę zmian i nowości.

Zapraszamy do lektury 🙂

Postepy Prac

Dużym temat który mamy ostatnio na tapecie, jest ogarnięcie sytuacji artefaktów na ServUO, ponieważ oryginalnie jest kilkanaście różnych systemów obsługujących zdobywanie artefaktów, a my do tego mamy swój system, w którym są oryginalne artefakty, są nasze artefakty autorskie, jest to podzielone na sezony artefaktowe i dość sporo kawałków się zazębia między sobą.

Ostatnio wspominaliśmy, że dokonaliśmy inwentaryzacji artefaktów, ale tak na prawdę była to tylko ogólna inwentaryzacja, które pozwoliła nam teraz dokonać szczegółowej inwentaryzacji poszczególnych grup i określić co jest gdzie używane i co chcemy z tym zrobić na ServUO.

Doszliśmy do bardzo prostych wniosków co trzeba zrobić:

  • Artefakty Doom, będa dystrybuowane przez GauntletPoints system
  • Artefakty Craftable, będą na ServUO dostępne tylko jako craftable (obecnie dało się niektóre zdobyć z bossów oraz ze zleceń myśliwego)
  • pozostałe grupy artefaktów, pozostaną w naszym systemie, a nieuwzględnione artefakty z tych grup dodamy do naszego systemu.
Tak się prezentuje arkusz od artefaktów

Zmiany te zostały już wstępnie zaimplementowane i czekają na testy.

Nasz nowy edytor map doczekał się dwóch nowych funkcjonalności.

Pierwszą jest możliwość wyświetlenia, kafelków po których można chodzić, co jest bardzo często używane podczas budowania budynków oraz dekorowania.

Tak budowniczowie widzą na co można wejść postacią

Drugą funkcjonalnością, jest możliwość spłaszczenia terenu oraz obiektów, co jest przydatne w przypadku problemów niewidocznych gołym okiem z powodu perspektywy.

Widok domyślny, spłaszczony teren, spłaszczone wszystko

W między czasie udało nam się zrobić kolejną sesję testową, gdzie mogliśmy potwierdzić ostatnio wprowadzone zmiany.

Sesja testowa w większości polegała na pokonaniu wybranego dungeona z myślą o ogólnych odczuciach w zakresie treningu zwierząt i według nas jest całkiem nieźle i ewentualnie będziemy wprowadzać jakieś pomniejsze poprawki.

Pojedynek zwierząt po treningu

W trakcie testów wykryliśmy buga w systemie osiągnięć, który spowodował crash serwer i został natychmiastowo naprawiony.

Moment crasha serwera

W międzyczasie potwierdziliśmy, że pasywne bonusy z zielarstwa do LRC oraz LMC działają jak należy.

Wykryliśmy również błąd w AI, który powoduje, że niektóre potwory walczą między sobą.

W skrócie: jest już w miarę grywalnie, ale zanim kogokolwiek wpuścimy, to musimy podokręcać co nieco tu i tam 🙂

Co nowego przynosi ServUO

VvV

Ci z was, którzy grali na Nelderim jakieś 15 lat temu, pewnie pamiętają Frakcje Kongregacji i Czystej Krwii. To była główna płaszczyzna PvPowa, poza walkami z mordercami pod południową bramą. System frakcji przeszedł sporą zmianę na OSI i obecnie jest znany pod nazwą Vice vs Virtue (VvV). Postaramy się wam po krótce przybliżyć jak obecnie ono funkcjonuje na OSI.

Publish 86 podmienił oryginalny system frakcji na system VvV.

DOŁĄCZANIE I OPUSZCZANIE VvV:

  • Kiedyś można było przystąpić do frakcji przy kamieniu frakcji w danym mieście, które było przypisane do konkretnej frakcji, na OSI w systemie VvV, dołączanie jest możliwe jedynie z panelu gildii.
  • Wg uoguide.com, kliknięcie przycisku „Akceptuj!” w okienku akceptacji zapisze graczy do Vice vs Virtue.
  • Podczas pobytu w Vice vs Virtue gracze będą otwarci na ataki od innych graczy VvV.
  • Na OSI każdy z graczy uczestniczących w w VvV dostaje dopisek [VvV] przy swoim imieniu.
  • Gracze, którzy są zapisani do VvV, przy zalogowaniu oraz podczas bycia zalogowanymi, otrzymają wiadomość gdzie odbywa się bitwa VvV.
  • Tak jak i w starym systemie frakcji, gdy jesteśmy zapisani do VvV, jesteśmy narażeni na tymczasowy stat loss (spadek statystyk), gdy zostajemy zabici przez gracza z przeciwnej drużyny.
  • Gracze mogą zrezygnować z Vice vs Virtue, wybierając opcję “Zrezygnuj z Vice vs Virtue” na stronie “Moja gildia” w menu gildii. Jednakże, trzeba pamiętać, iż efekt wyjścia nie jest natychmiastowy. Po kliknięciu w chęć opuszczenia VvV, mamy 3-dniową kolejkę i w ciągu tych 3 dni nadal możemy być atakowani. Po tych 3 dniach, po ponownym zalogowaniu, zostajemy usunięci z VvV
  • Jeśli gracz zostanie usunięty z gildii podczas bycia zapisanym do VvV, to wejdzie w trzydniowy okres wypisywania, w którym gracz będzie oznaczony jako uczestnik VvV i będzie narażony na atak.

WALKI:

Gdy jest zalogowanych co najmniej 2 nieprzyjaznych gracz VvV, w losowej lokacji rozpoczyna się walka. Gdy gracz VvV wejdzie do aktywnego obszaru walki, pojawi się gump statusu bitwy, w którym będzie widoczny postęp ich gildii w zdobywaniu punktów, jak również ważne aktualizacje dotyczące meczu. Na początku bitwy gracze, którzy nie są związani z VvV, otrzymają ostrzeżenie o możliwości ataku, jeśli nie opuszczą miejsca walki. Każdy gracz, który nie jest związany z VvV i wejdzie do mejsca walki podczas bitwy, otrzyma to samo ostrzeżenie. Gracze VvV mogą zdobywać punkty dla swojej gildii na wiele sposobów:

Przykład owego gumpa
  • Zajęcie miejsca bitwy przez jedyną gildię / sojusz
  • Zabijanie przeciwników, którzy nie są związani z VvV. Istnieje 5-minutowy okres przerwy między momentem śmierci gracza, a momentem, w którym gildia zabójcy otrzymuje punkty.

    Znalezienie i zwrócenie Sigilu:
  • Ikona Sigilu na dole okna statusu walki zacznie świecić, gdy sigil pojawi się w grze.
  • Jeśli gracz ma co najmniej 80% umiejętności Wykrywania Ukrycia, wtedy umiejętność pasywnego Wykrywania Ukrycia ostrzeże go o bliskości sigilu komunikatem “Ich wyostrzone zmysły wykryły coś ukrytego w okolicy”.
  • Gracze muszą używać umiejętności Wykrywania Ukrycia oraz mieć co najmniej 100% umiejętności Kradzieży, aby odkryć i ukraść Sigil.
  • Po zdobyciu sigilu można go zwrócić do kapłana Vice lub Virtue. Sigil jest przeklęty i może być podniesiony lub skradziony przez innych graczy VvV.

    Zdobycie ołtarza:
  • Kiedy w oknie statusu bitwy pojawi się komunikat “Walcz o Ołtarz”, strzałka wskazująca kierunek ołtarza pojawi się na ekranie.
  • Aby zdobyć ołtarz, należy być jedyną gildią / sojuszem, który stoi na nim i zapala wszystkie 4 pochodnie. Jeśli przeciwny gracz VvV wejdzie na ołtarz, proces zdobywania zostanie zresetowany.
  • Gracze VvV otrzymają punkty srebrne podczas meczu, które można wymienić na różnorodne nagrody.
  • Kiedy pasek stanu punktów dowolnej gildii zostanie wypełniony lub czas bitwy się skończy, bitwa zostanie zakończona. Po krótkim okres

Za udział w VvV można otrzymać nagrody, które można zobaczyć tutaj. Chcemy tylko przypomnieć, iż to są informacje odnośnie tego jak to działa na OSI. Na Nelderim system może przybrać zupełnie inną formę.

Podsumowanie

Mapy, bitki i updaty. To własnie na to poświęciliśmy ostatnie 2 tygodnie. Nie zwalniamy tempa i mamy nadzieję, że za kolejne 2 tygodnie będziemy mieli dla was równie soczyste newsy.

Read More

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!

Read More

Nelderim DevBlog #50

To były mocne 2 tygodnie. Wiele godzin spędzonych w kodzie, a potem w grze na testach, że ekipa Nelderim zaczyna widzieć cyferki jak w Matrixie.

Dlatego mamy nadzieję, że usiądziecie wygodnie przed ekranem z dobrym napitkiem i przeczytacie już #50 DevBloga z wielką przyjemnością. 🙂

Nadrabianie zmian

Migracja na ServUO trochę już trwa i idzie to całkiem nieźle naszym zdaniem, szczególnie że w międzyczasie cały czas utrzymujemy obecny serwer.

I to właśnie obecny serwer będzie niejako bohaterem tego DevBloga, ponieważ postanowiliśmy, że nastał idealny moment, żeby nadgonić i przenieść na ServUO wszystkie zmiany wprowadzone na obecnym serwerze od czasu ostatniej synchronizacji.

Niektórzy mogli by zapytać, dlaczego nie robimy tego na bieżąco?

Otóż w ten sposób oszczędzamy sobie sporo pracy, ponieważ gotowe skrypty trzeba przenosić i dostosowywać tylko raz, a nie za każdym razem jak coś naprawiamy.

Ostatnia taka synchronizacja miała miejsce prawie rok temu i nazbierało się około 290 commitów, i przez ostatnie 2 tygodnie udało się wszystkie albo przenieść albo wyodrębnić jako osobne zadania, jeżeli przenoszenie kodu wydawało się trochę bardziej skomplikowane.

Przy okazji przenoszenia zmian, wszystkie zmiany zostały od razu wyczyszczone, a kod był poprawiany i dostosowywany do panujących u nas standardów jakości 🙂

Zajęło nam większość wolnego czasu w ciągu ostatnich dwóch tygodni, ale znów jesteśmy na bieżąco ze zmianami i możemy się skupić na dokręcaniu pozostałych rzeczy.

Testy Nowego Haven

Oprócz synchronizacji spędziliśmy też sporo czasu na tłumaczeniu i przeróbkach oryginalnych questów OSI, by dostosować to do Nelderim.

Choć jeszcze niektóre teksty nam umknęły

“Wyspa Noobów” zyskała już bardziej oficjalną nazwę – Nowe Haven. W środę 31.01.2024 zaczęliśmy pierwsze testy lokacji startowej, która będzie dostępna na ServUO. Będzie to pierwsze miejsce, w którym będzie można swobodnie poruszać się, z którym gracze będą mieli styczność.

Wiemy, że Ultima Online, a szczególnie Nelderim, przyprawiał o ból głowy tych, którzy przyszli tu z innych shardów, a co dopiero tym, którzy nigdy nie grali w Ultimę. Jak chodzić? Jak klikać? Jak koxać? Co robić?

Na te i wiele innych pytań odpowiada właśnie “tutorial” w Nowym Haven. Właśnie tam, tuż po zalogowaniu się do gry, będziemy mogli wykonać szereg questów, poćwiczyć używanie umiejętności, pograć, poruszać się czy pobić moby, aby nauczyć się podstaw gry. Poniżej klika screenów z testów.

Gumpy questów zostały zmienione (OSI)
Do przetłumaczenia zostały też guziki w gumpie, ale to już większa robota i trzeba grzebać w kliencie
A po długim kodowaniu, trzeba zamoczyć kija…
Chcieliśmy znów poczuć się jak nowi gracze

Co gdy schrzanię sobie postać w Nowym Haven?

Nie ma się czego bać. W obecnym założeniu, tuż przed wyjściem z wyspy będziemy poinformowani, że wszelkie nasze umiejętności, statystyki i przedmioty pozyskane na wyspie, znikają i zaczynamy już na znanych nam ziemiach Nelderim z czystą kartą.

W obecnym założeniu, droga nowej postaci wyglądać będzie tak: Nowe Haven > Komnata wyboru frakcji > Komnata wyboru rasy > Miasto wybranej rasy.

Po testach okazało się, że questy wymagają jeszcze kilku poprawek (niepoprawne tłumaczenie, źle podpięty cliloc), więc piłujemy te questy ile wlezie 😉

Testy też dały nam do zrozumienia, że jest jakiś problem z wydajnością, gdyż często towarzyszyły nam tzw. lagi i ping powyżej 300ms. Zaciekawieni tematem zrobiliśmy szybki test i obecny serwer działa bardzo dobrze na maszynie testowej, więc problem leży gdzieś w ServUO albo nowym kliencie.
Zaczęliśmy już analizować sytuacje i wiemy mniej więcej gdzie leży problem, ale jeszcze nie wiemy jak go rozwiązać, no ale o tym opowiemy wam w przyszłym DevBlogu 🙂

Co nowego przynosi ServUO

Temat, który został poruszony przez naszych graczy na Discord, zainspirował nas, by szerzej opisać co się stało w 2016 roku.

Rok 2016 przyniósł interesujące i szeroko zakrojone zmiany w loot oraz znaczącą modernizację broni, ataków specjalnych i zbroi w publikacjach 81 i 86“, jak czytamy na stronie uo.com. No dobra, ale co to znaczy?

Weapon Revamp 2016

Wszystkie bronie zostały znormalizowane w oparciu o prędkość broni (już nie są w tych dziwnych cyferkach, tylko w sekundach) i to w czy są 2-ręcznie czy 1-ręczne. Dodatkowo, niektóre ataki specjalne zostały zmienione, co możecie zauważyć, jeśli na bieżąco aktualizujecie UO Classic za pomocą Classic Launcher. Niektóre specjale “nie działają”, jeśli są ustawione w HotKeys w Razor Enhanced. Przykładem takiej broni jest na przykład Maczuga Bojowa, której specjale zmieniły się. Dodatkowo, w 2016 roku dodano wiele nowych broni. Część z nich są tylko dla Gargulców, ale, jako, że my nie planujemy mieć Gargulców, to udostępnimy zapewne te bronie wszystkim, jeśli tylko ich animacja wygląda dobrze na postaci ludzkiej.

Wszelkie szczegóły na temat broni możecie znaleźć na oficjalnej stronie UO.

Podsumowanie

I to tyle w dzisiejszym, 50-tym już DevBlogu. Mam nadzieję, że czekacie tak niecierpliwie, jak my na pierwsze otwarte testy. Mamy nadzieję ruszyć jak najszybciej.

Dzięki wielkie za uwagę i do następnego! 🙂

Read More

Nelderim DevBlog #49

Jeżeli czytaliście poprzedniego DevBloga dokładnie i ze zrozumieniem, mogliście wyłapać fragment, że powróciliśmy do regularnych spotkań wewnątrz ekipy, żeby zwiększyć tempo prac w kierunku migracji.

Sami możecie ocenić, czy przyniosło to oczekiwane efekty 🙂

Dodatkowo nadgoniliśmy pewne sprawy oraz udało nam się zamknąć 2 duże zadania.

W takim razie, weźcie w rękę ciepłą herbatkę z cytrynką lub inny napitek i rozsiądźcie się wygodnie, gdy będziecie czytać dzisiejszego bloga. 😉

Postępy prac

Zgodnie z zapowiedzią, przez ostatnie dwa tygodnie udało nam się spotkać w szerszym gronie dwa razy, tak więc plan dwutygodniowy wykonany w stu procentach!

Pierwsze ze spotkań było prawdziwym korpo-meetingiem, ponieważ tylko gadaliśmy o planach długo i krótko terminowych, doszliśmy do konsensusu w kilku kwestiach fabularnych i nelderimowo-światowych, a także wyodrębniliśmy kilka najważniejszych na ten moment zadań i przypisaliśmy do nich konkretne osoby.

Drugie ze spotkań, było już standardową sesją testową, gdzie naszym celem było wspólne ustalenie czy ostatnio zrobione rzeczy są gotowe i możemy je zamknąć, czy jednak wymagają jeszcze trochę pracy.

Testy animal training oraz loot

Jednym z najciekawszych punktów sesji testowej, na którym spędziliśmy też najwięcej czasu, były testy AI potworów czarujących.

Jeżeli ktoś przyszedł do nas z innego shardu, to mógł zderzyć się ze ścianą, że nasze potwory, nie są zwykłymi kukłami do bicia, a niedoświadczeni wędrowcy dość szybko mogą podziwiać na swoim ekranie dobrze wszystkim znany szary ekran.

Co widzi przeciętny gracz, gdy GM zwraca mu uwagę

Od początku migracji wiedzieliśmy, że chcemy aby nasze modyfikacje w AI z obecnego serwera, były również na ServUO i ostatnio udało się dowieźć ostatni element układanki, którym było właśnie AI dla istot czarujących.

Bardzo fajnymi dodatkami w AI na ServUO są:

  • wsparcie dla magicznych pól typu fire field, poison field
  • wsparcie dla czarowania przywołańców przez AI (to musimy jeszcze sprawdzać i może pojawi się w niektórych mobach 🙂 )
  • Wsparcie dla wszystkich szkół magii, dostępnych w oryginalnym UO dla graczy (nekro, bushido, chivalry, necro-mage, spellweaving, mysticism)

Udało nam się też potwierdzić, że dużo pomniejszych fixów działa prawidłowo, system imion działa już prawie dobrze, system języków działa dobrze, wydajność jest dobra, i podczas ponad godzinnej sesji testowej serwer zcrashował tylko jeden raz 🙂

Z gorszych wieści, po ostatnim dostosowywaniu systemu lootu do nowego generatora propsów, wartości wszystkiego z wyjątkiem magicznych przedmiotów są do ponownej rekalkulacji.

Poniżej możecie znaleźć listę rzeczy które zrobiliśmy na ServUO, a które nie są fixami:

  • zwiększenie czasu działania Dużej Mikstury Maski Śmierci do 2 minut
  • dodano Nelderimowe pety do OSIowego systemu trenowania petów
  • przeniesiono limit 250 przedmiotów sprzedawcy gracza z RunUO
  • przeniesiono Potężne mikstury z RunUO
  • przeniesiono kostury runiczne i latarnie z RunUO
  • dodano customowe maski niedźwiedzia i maski jelenia
  • przetłumaczyliśmy nieprzetłumaczone elementy okna craftingu
  • przeniesiono fragment kodu z RunUO powodujący, że pająki nie będą atakować przywołańców Drowa
  • przeniesiono fragment kodu z RunUO powodujący, iż paraliż zadziała rownież na cel będący w trakcie rzucania zaklęcia
  • przeniesiono fragment kodu z RunUO odnośnie questa na nasionka
  • dodano nową broń do umiejętności Rzucanie – harpuny – która działa tak jak inne bronie w umiejętności Rzucanie (opisanej w DevBlogach 6 i 33)
  • dokończyliśmy kodowanie LRC do Zielarstwa, o którym pisaliśmy w poprzednim DevBlogu

CentrED#

Nadszedł ten dzień, kiedy nasz nowy edytor map wchodzi w dojrzałość i od około tygodnia nasi edytorzy mają zielone światło, żeby działać na nowym narzędziu na naszym głównym serwerze.

Udało się to osiągnąć poprzez niezliczoną ilość fixów i poprawek, a następnie wspólnej sesji testowej edytora, gdzie wydajność i stabilność jest już na wysokim poziomie.

Nowy CentrED# wciąż będzie rozwijany, ponieważ w niektórych aspektach wciąż zostaje w tyle w porównaniu do swojego poprzednika, ale w połączeniu ze starym klientem, nasi edytorzy powinni mieć obecnie wszystko czego potrzeba do pracy.

To że jest to nowoczesne narzędzie, tworzone przez nas, umożliwia nam wprowadzanie nowych funkcjonalności w błyskawicznym czasie, czego dowodem jest wprowadzenie oświetlenia terenu w zaledwie kilka dni sporadycznego kodowania.

Jako kolejna nowa funkcjonalność, którą udało się zaimplementować, jest bardzo podstawowe wsparcie dla systemu oświetlenia, co pozwoli nam tworzyć bardziej klimatyczne podziemia.

Co nowego przynosi ServUO

Wódko ma, wódko ma, wódkooo maaa…

ServUO wyszło naprzeciw koneserom wysokoprocentowych napojów wyskokowych i zaserwowało nam system destylacji alkoholi. Tak. dobrze czytacie. DE-STY-LA-CJA.

Destylacja to system produkcji alkoholi ,który wszedł w publishu 70.0.4 i można było uzyskać dostęp do niego poprzez Rustic Theme Pack (co to Theme Packs, przeczytacie tu) i można je dzięki temu tworzyć za pomocą umiejętności Majsterkowanie.

Tak wygląda destylator – stawiamy go w domku z deeda

Aby sobie stworzyć taki destyaltor, potrzeba 90.0 umiejętności Majsterkowania i poniższe komponenty:

2x klikiem na destylator możemy wejść do menu produkcji alkoholi. Tak właśnie ono wygląda przed przetłumaczeniem:

No, z małym błędem 😉 Trzeba będzie poprawić cliloc przy tłumaczeniu

Mamy 2 typy destylacji – standardową i podwójną:

Podwójna destylacja jest używana zamiast destylacji standardowej do podwojenia ilości składników w celu produkcji mocnych napojów alkoholowych.

Do beczki można również dodać etykietę o maksymalnej długości 15 znaków. Etykieta będzie widoczna jako nazwa przedmiotu na skończonej butelce.

Gdy w twoim plecaku znajdują się niezbędne składniki i pusta beczka, jesteś gotowy do przeprowadzenia destylacji. Zauważ, że istnieje szansa na niepowodzenie w próbie destylacji i utratę składników. Szansa na sukces zależy od odporności bakteryjnej drożdży oraz umiejętności Gotowania i Alchemii.

Pozostały czas do dojrzałości można sprawdzić, dwukrotnie klikając beczkę. W przybliżeniu potrzebne jest 48 godzin. Beczki można zostawić w plecaku, przenieść do banku lub jakiegoś pojemnika. Proces dojrzewania będzie kontynuowany bez względu na wybrane miejsce przechowywania.

A tak prezentuje się lista składników (jeszcze nie przetłumaczonych):

źródło uoguide.com

Podsumowanie

Dwa duże taski – AI czarujących potworów oraz zboostowanie Zielarstwa zostały zamknięte. Nie wykluczamy przerzucenia zmian z Zielarstwa jeszcze na RunUO, jeśli w dalszych testach nie będzie pola do zmian.

W dodatku, możecie sobie na ServUO robić własny alkohol. Czy koncesja będzie potrzebna? Może 😉

Działo się sporo przez ostatnie dwa tygodnie, a my spróbujemy żeby następny DevBlog był jeszcze bardziej obifty.

Read More

Nelderim DevBlog #48

Święta świętami, ale robota sama się nie zrobi, tak więc gdy wy odpoczywaliście i świetnie się bawiliście świętując nowy rok, my ciężko pracowaliśmy…

CentrED#

Prace nad nowym edytorem map idą jak burza i z każdym kolejnym dniem nasza aplikacja jest coraz bliżej tego, aby oficjalnie móc zastąpić leciwego CentrEDa.

Przez ostatnie 2 tygodnie udało się wprowadzić niezliczoną liczbę poprawek w funkcjonalności oraz poprawić jakość samego kodu.

Z ważniejszych zmian warte uwagi jest usprawnienie wygody korzystania z aplikacji poprzez wprowadzenie możliwości poruszania się po mapie z wykorzystaniem myszy oraz wprowadzenie podstawowych skrótów klawiaturowych do przełączania pomiędzy narzędziami.

Jedną z poprawek, którą warto wymienić było rozwiązanie problemu niejednolitego koloru tekstur terenu, co wyglądało po prostu dziwnie i niepoprawnie

lewo: CentrED# przed poprawką, prawo: ClassicUO

Po poprawce teren prezentuje się następująco:

Jest lepiej, aczkolwiek brak systemu oświetlenia powoduje problemy w szacowaniu wysokości terenu i wciąż oczekuje to na swoją kolej do zaimplementowania.

Jedną z mocno wyczekiwanych rzeczy było wprowadzenie możliwości edycji mapy na zaznaczonym obszarze i przez ostatnie 2 tygodnie udało się to wprowadzić
Przy okazji udało się też ustalić jednolity interfejs dla wszystkich dostępnych narzędzi, co pozwoliło zredukować ilość zduplikowanego kodu, a efekty możecie podziwiać na tym krótkim wideo:

W międzyczasie przeprowadziliśmy też krótki test wewnątrz ekipy, jednakże jeszcze nie nadszedł dzień porzucenia starego CentrEDa 😉

Lepsze zielarstwo

Prace nad ulepszeniem zielarstwa ruszyły. Oprócz dodania tytoniu i fajki, o których możecie przeczytać w poprzednim DevBlogu oraz rozwijaniu tego pomysłu przez anika o smakowe tytonie, zdecydowaliśmy się również zwiększyć liczby pozyskiwanych surowców oraz szczepek.

Liczbę pozyskiwanego surowca z jednej rośliny zebranej z pola zwiększyliśmy z 2 do 5, zaś ilość pozyskiwanych szczepek z 1 do 3. Dodatkowo, obniżyliśmy próg umiejętności Zielarstwa, wymagany do sadzenia szczepek z 90.0 do 60.0.

Ponadto, udało nam się okodować dodatkowy dopalacz Zielarstwa, czyli pasywne LMC (zmniejszony koszt many). Za każde 20.0 Zielarstwa, postać posiadająca tę umiejętność, ma otrzymać 1 punkt LMC.

Obecnie pracujemy też nad pasywnym LRC (zmniejszonym kosztem ziół), gdzie za każde 5.0 umiejętności Zielarstwo, postać ma otrzymać 1 LRC.

Co nowego przynosi ServUO

ServUO to nie tylko ciekawe mechaniki. Ten emulator dodaje nam też sporą liczbę nowych potworków, a co za tym idzie, ciekawe grafiki. Oto 2 z nich:

Podsumowanie

Na sam koniec możemy wam sprzedać newsa, że z nowym rokiem postanowiliśmy powrócić do regularnych ekipowych spotkań, co powinno bardzo pozytywnie odbić się na tempie prowadzenia naszych prac, tak więc jest szansa, że przyszłe DevBlogi będą bardzo obfite.

Ale czy tak się na prawdę wydarzy zobaczymy za dwa tygodnie.

Do następnego!

Read More

Nelderim DevBlog #47

Witamy was serdecznie w tym przedświątecznym wydaniu DevBloga.

Jak zawsze, weźcie sobie coś ciepłego do picia i zapraszamy was do lektury.

CentrED#

W temacie nowego CentrEDa działo się ostatnio bardzo dużo i efekty są zadowalające.

Dodaliśmy obsługę zestaw kafelków/kolorów używanych do rysowania i aplikacja losowo wybiera grafikę/kolor z wybranego zestawu do wprowadzenia zmiany. Była to jedna z ważniejszych funkcjonalności, które są niezbędne podczas edycji mapy.

Bardzo dużo zmian zostało wprowadzonych w samym interfejsie aplikacji, żeby było wygodnie dla użytkowników i od jakiegoś czasu można dokować okienka, aplikacja posiada domyślny układ, a także układ okien jest zapamiętywany pomiędzy sesjami użytkownika.

Domyślny układ aplikacji

W myśl tego, że nie ma nic idealnego, wprowadziliśmy bardzo przyjazne dla użytkowników wyskakujące okienko, mówiące o tym gdzie i dlaczego aplikacja napotkała błąd krytyczny 🙂

Skoro tak dobrze wszystko się prezentowało, postanowiliśmy wspólnie przetestować i ustalić co jeszcze jest do zrobienia albo poprawienia i testy wyjątkowo wyszły bardzo pozytywnie, jedynie dwa razy zostaliśmy uraczenia wspaniałym oknem o błędzie krytycznym i znaleźliśmy tylko dwa dość poważne błędy(które w momencie pisania tego DevBloga zostały już naprawione).

Testy zakończone pomyślnie

Ustaliliśmy, że jest całkiem nieźle, ale brakuje jeszcze kilka funkcji oraz usprawnień, żeby aplikacja nadawała się do faktycznego edytowania mapy.

Po testach stwierdziliśmy też, że wydajność aplikacji jest do poprawy, ze względu na dość częste przycięcia i udało się nam to przeanalizować oraz znacząco poprawić wydajność, gdzie śmiało możemy teraz stwierdzić, że jest ona porównywalna, bądź nawet lepsza niż poprzednie wersje CentrEDa.

Masz ognia?

Tytoń może być zbierany za pomocą umiejętności Zielarstwo. Ilości pozyskiwanych składników oraz próg sadzenia i szansa na pozyskanie szczepki jest taka sama jak w przypadku innych ziół.

Tytoń, który finalnie pozyskamy, musi znajdować się w plecaku, aby można go palić.

Gdy fajka znajduje się poza slotem, na który jest przeznaczona – kolczyki – ma animowaną grafikę. Będziecie mieć okazję obejrzeć ją w grze, już niebawem, gdyż fajka będzie dostępna już na RunUO. 🙂

Jeśli mamy tytoń w plecaku, a fajka znajduje się w plecaku lub w slocie kolczyków, poprzez 2x klik na fajkę, możemy ją odpalić.

A wtedy po 1 sekundzie pojawi się animacja oraz emotka.

Jeśli tytoniu nie mamy w plecaku, pojawi się próba odpalenia fajki, a następnie to:

Fajka ma 100 użyć. Po każdym odpaleniu spada nam 1 użycie. Fajka nie może być naprawiana, jednakże, nową fajkę może stworzyć postać z umiejętnością Stolarstwo na poziomie między 11.4 a 35.0.

Co nowego przynosi ServUO

Mini championy

Większość z was zna system championów, który istnieje od bardzo dawno i jest to główne źródło pozyskiwanie PowerScrolli.

Razem z ServUO otrzymujemy do naszej dyspozycji bardzo podobny system pochodzący z roszerzenia Stygian Abyss, w postaci 13 predefiniowanych mini championów, z których główną nagrodą są składniki wymagane do Imbuingu.

System ten nazywa się mini champions, ponieważ te spawny są zdecydowanie mniejsze w porównaniu do oryginalnych spawnów: 3 fale w porównaniu do 4 i około 50 potworów łącznie do zabicia w porównaniu do około 500 w systemie normalnych championów

Lista mini championów prezentuje się następująco:

  • The Secret Garden [Fey]
  • Stygian Dragon Lair Entrance [Dragon/Reptile]
  • Crimson Veins [Demon/Elemental]
  • Abyssal Lair Entrance [Demon]
  • Fire Temple Ruins [Fire]
  • The Lands of the Lich [Undead]
  • Skeletal Dragon [Undead]
  • Enslaved Goblins [Goblins]
  • Lava Caldera [Fire]
  • Passage of Tears [Acid]
  • Clan Chitter [Ratmen]
  • Clan Ribbon [Ratmen]
  • Clan Scratch [Ratmen]

Lokacje mini championów, drop oraz ich kompozycja mogą ulec zmianom 🙂

Więcej info tutaj https://www.uoguide.com/Mini-Champs

Podsumowanie

Ostatni DevBlog w tym roku i był to rok owocny, pomimo że pasek postępu migracji jeszcze potrzebuje sporo, żeby się zapełnić, to widać już światełko w tunelu i zdecydowanie nie jest to nadjeżdżający pociąg 🙂

Nam zostaje już tylko życzyć wam dużo zdrowia, szczęścia i żeby ServUO było przed GTA VI 😀

Wesołych i widzimy się w przyszłym roku!

Read More

Nelderim DevBlog #46

Witamy serdecznie w grudniowym wydaniu Nelderim DevBlog.

Zaparzcie sobie herbaty, usiądźcie wygodnie i zapnijcie pasy, bo pasek postępu mknie jak szalony!

Testy, teściki

02.12.2023 odbyły się kolejne testy ServUO, podczas których udało nam się zamknąć sporo tematów, otworzyć kilka nowych bugów oraz popchnąć pasek progresu do ponad 50%. Na owych testach udało się przetestować następujące zmiany:

  • wprowadzenie opóźnienia między użyciami umiejętności Zaglądanie (2 sekundy)
  • rozwiązanie problemu z NPC rzemieślnikiem nie reagującym na słowo “zlecenie”
  • nadgoniona zmiana z RunUO odnośnie braku wpisu o tym, że boss Prastary Runiczny Żuk będzie dawał artefakty
  • pety nie reagowały na komendy w językach rasowych, co udało się naprawić
  • poprawiliśmy zdublowaną kategorię “Inne” w narzędziu skryby i przenieśliśmy je z tej kategorii do już oryginalnie istniejącej kategorii Inne z OSI
  • dodaliśmy naukę umiejętności Rzucenia NPCowi mistrz gildii skrytobójców, by mógł nauczać do 40 punktów tej umiejętności
  • komendę z emotką świadczącą, że jestesmy AFK, którą finalnie przerobimy na automatyczne AFK
  • przeniesione zostały regiony z RunUO
  • przetestowaliśmy stackowalność przedmiotu Dusza
  • przetestowaliśmy region podróży, gdyż uprzednio można było teleportować się do środka lochu
  • przywróciliśmy i sprawdziliśmy grafiki terenu, które wgraliśmy do naszego klienta jakiś czas temu na RunUO
  • przetestowaliśmy proszek wzmocnienia do ksiąg
  • przetestowaliśmy właściwość “difficulty” u Wojownika Ophidian, określającą ilość i natężenie lootu
  • przetestowaliśmy to czy faktycznie teraz nie widać tytułów w paperdoll, tak jak na RunUO
  • przetestowaliśmy Pack Instinct dla przywołańców nekromanckich z Tworzenia Przywołańców Nekromanckich
  • przetestowaliśmy przeniesione z RunUO zlecenia myśliwskie 4 poziomu
  • sprawdziliśmy czy na pewno umiejętności rasowe z OSI zostały wyłączone
  • sprawdziliśmy dodatkowe podpisy z patcha Stygian Abyss określające natężenie propsów na przedmiocie
  • upewniliśmy się, że Mistycyzm oraz wszelkie związane z nim przedmioty zostały chwilowo wyłączone, do momentu, aż przystosujemy tę umiejętność do autorskiego, nelderimowego systemu autoquestów
  • przetestowaliśmy poprawkę odnośnie zbrojonego konia bojowego, którego zbroja nie przyjmowała koloru materiału
  • w systemie imion udało się naprawić to, że gdy najedziemy na postać myszką, to już nie widać imienia, chyba, że się komuś przedstawimy
  • poprawiliśmy rozjechany gump kupca stawianego przez gracza

Poniżej kilka screenów z rzeczy, które jeszcze trzeba poprawić lub dodatkowo przetestować:

NPC nie mają nadanego języka, i objawia się to dziwnymi błędami. Obecnie wygląda to tak:

Bankier wykrzykuje wielokrotnie wiadomości… i to w 2 językach. To jest do porpawy:

Testowaliśmy region teleportacji, ale jednak wydaje nam się, że to na tyle duża sprawa, że będziemy to chcieli w przyszłości przetestować na testach dla Patronów, podczas dłuższej sesji testowej:

Wiele dodatkowych rzeczy wyszło jeszcze w trakcie, co urodziło dodatkowe zadania do wykonania przed startem. Oto kilka z nich:

  • księgi umiejętności specjalnych źle się wyświetlają
  • system imion jeszcze nie do końca działa poprawnie
  • wyżej opisany Vendor Search generuje mapę z oznaczeniami, ale mapa pochodzi z OSI
  • biżuteria ma zbyt dużo wytrzymałości
  • nie widać własnego imienia w paperdoll
  • trzeba przetłumaczyć kilka małych guzików w gumpie craftingu
  • kupowanie od NPC, gdy siedzimy na mouncie

CentrED#

Ostatnim razem nie było nic o nowym centrEDzie, ale czas najwyższy przypomnieć, bo trochę się pozmieniało 🙂

Nowy CentrED został pomyślnie uruchomiony przez użytkowników na systemach Linux oraz macOS, coś co powinno działać od początku, ale nie było przetestowane do tej pory.

Pomimo tego, że jest to całkiem świeży kawałek aplikacji, już niektóre cześci zaczęły być przestarzałe, tak więc został zorganizowany update do najnowszej wersji środowiska .NET 8 oraz zaktualizowane zostały biblioteki graficzne do najnowszych wersji.

Jedną z nowości jest zaimplementowany tzw. “virtual layer”, które pozwala robić edycje mapy na konkretnie zdefiniowanej wysokości, bardzo przydatne do przeróżnych prac na mapie 🙂

Kolejną dużą funkcjonalnością, która się pojawiła jest możliwość robienia wielu edycji mapy poprzez poruszanie myszką z przytrzymaniem przyciskiem.

Przy okazji został wykonane porządki w kodzie i zostały usunięte nieużywane fragmenty kodu, jak również został usunięty eksperymentalny system oświetlenia i cieni, który nie odwzorowywał tego jak wygląda mapa w grze, a w jego miejsce w przyszłości pojawi się nowy system oświetlenia, który będzie dokładnie odwzorowywał światła i cienie tak jak jest to widoczne w grze.

Dodaliśmy też mocno wyczekiwaną opcję wycofywania wprowadzonych zmian z użyciem dobrze wszystkim znanego skrótu Ctrl+Z 🙂

I oprócz tego wszystkiego udało nam się naprawić wiele pomniejszych błędów, poprawić wydajność aplikacji, wprowadzić pomniejsze usprawnienia tu i tam i nasz edytor jest już bardzo blisko tego, żeby mógł zastąpić na dobre nasz obecny edytor.

Co nowego przynosi ServUO

Nowy patch dodaje nam świetną opcję takiego “OLX’a” bez wychodzenia z domu… dosłownie, bo działa on w lokacji, gdzie bezpiecznie można się wylogować, np. domek.

Mowa o Vendor Search. Co to takiego? Już wyjaśniamy.

Vendor Search to opcja, która zawitała do UO w 2015 roku i pozwala ona na wyszukiwanie danego przedmiotu, propsa na przedmiotach, w panelu, do którego mamy dostęp poprzez kliknięcie na swoją postać i w menu kontekstowym należy wybrać Vendor Search. Wtedy to naszym oczom pokaże się takie oto okienko:

Przedmioty możemy filtrować dowolnie, jak nam się tylko podoba i nie musimy chodzić już po sklepikach graczy, by sprawdzić czy coś wpadło na nasz ulubiony kram.

Panel pokaże nam przedmioty wraz z cenami oraz mapką i strzałką prowadzącą do tego sklepiku. Jeśli ktoś chciałby się wgryźć w szczegóły, to zapraszamy TU na oficjalną stronę UO.

Podsumowanie

I na tym zakończymy dzisiejszy wpis.

Nareszcie udało nam się przekroczyć dumnie prezentujące się 50% na pasku postępu i już nie możemy się doczekać, aż będziemy mogli rozpocząć właściwe testy rozgrywki na nowym serwerze, ale na to wszystko musicie jeszcze trochę poczekać.

Do następnego!

Read More

Nelderim DevBlog #45

Oj działo się ostatnio całkiem sporo na froncie ServUO, tak więc weźcie coś do picia, rozsiądźcie się wygodnie i zapraszamy was serdecznie do lektury!

Postępy w dużych tematach

Działo się ostatnio dość sporo w kwestii ServUO, ponieważ zidentyfikowaliśmy 3 ostatnie duże tematy do okodowania, które były na liście do zrobienia przed UPem:

  • Animal Training
  • Mistycyzm
  • Imbuing
  • Nowy system lootu

Miały być trzy rzeczy, ale po drodze odkryliśmy, że musimy się przepiąć na nowy system lootu, żeby korzystać z dobrodziejstw ServUO, ale o tym trochę później.

W kwestii Mistycyzmu i Imbuingu bardzo szybko doszliśmy do wniosku, że tak na prawdę, nie musimy tego mieć na start, i wszyscy będą szczęśliwi, gdy te skille pojawią się w przyszłym patchu, już po przesiadce na nowy silnik 🙂

Animal Training też byśmy mogli zablokować na start, ale wtedy oswajacze byliby poszkodowani nie mogąc rozwijać swoich zwierząt od samego początku, kiedy pozostałe postacie będą mogły korzystać ze wszystkich dobrodziejstw systemu talentów (Masteries).

Ogólny zarzut co do Animal Trainingu jest taki, że bardzo łatwo jest sobie wytrenować dokładnie takie zwierzę jakie sobie wymarzliśmy, co automatycznie pozbawia sensu szukania i oswajania nowych zwierząt, zależnie od potrzeb.

Wszyscy dobrze wiedzą, że lubimy proste rozwiązania, więc najzwyczajniej znerfiliśmy ten talent celując w dwie wytyczne:

  1. Trenować zwierzę można tylko raz (poprzednio można było niektóre zwierzęta trenować nawet czterokrotnie)
  2. Ograniczyliśmy dostępny budżet na rozwój zwierzęta o około 50%

To jest nasz punkt wyjściowy, a teraz czekają nas sesje testowe, które pozwolą nam określić, czy tniemy dalej, czy jednak trochę przesadziliśmy, czy może należy iść w zupełnie inną stronę.

Wciąż mamy sporo do tłumaczenia

Natomiast temat nowego systemu lootu pojawił się ot tak, gdy próbowaliśmy dostosować koszty ubezpieczenia na ServUO, a trochę podczas tłumaczenia właściwości ItemPower.

Podczas zagłębiania się w wyliczanie kosztu ubezpieczenia na podstawie nasycenia magicznych właściwości przedmiotu natknęliśmy się na problem, gdzie dla niektórych przedmiotów koszt ten był całkowicie bezsensowny.

Szybko udało nam się dokopać do tego, że suma natężenia właściwości przedmiotów jest liczona niepoprawnie dla starego systemu lootu, który mieliśmy domyślnie włączony, a następnie zauważyliśmy, że właściwości przedmiotów z nowszych rozszerzeń są dostępne tylko dla nowego systemu lootu, tak więc wybór był prosty, musimy użyć nowego systemu lootu.

Po zmianie okazało się, że nasze obecne formuły obliczania lootu, nie są wykorzystywane przez nowy system lootu do tworzenia magicznych przedmiotów (złoto, gemy, składniki i reszta na nasze szczęście działają tak samo w obu systemach).

Nowy system lootu określa siłę potworów w zakresie 150-700, a nasze formuły mają zakres wartości pomiędzy 0.1-5000000, wiec musieliśmy znaleźć odpowiednia formułę do przeskalowania naszej siły potworów na wartości akceptowane przez nowy system lootu i parę logarytmów i innych operacji matematycznych i udało nam się osiągnąć w miarę sensowne wartości.

Nowe propsy, nowe menu ubezpieczeń, nowe ceny

No i udało się, nowy system lootu działa, po zabiciu dwóch potworów wyniki wydają się być w porządku, koszty ubezpieczeń zaczęły liczyć się dobrze, więc pomnożyliśmy je x6, żeby nie było zbyt łatwo, tłumaczenia jako tako się zgadzają, kolejna porcja serwera gotowa do porządnego wytestowania.

Co nowego przynosi ServUO

Będąc w temacie trenowania naszych podopiecznych, to czy wiecie, że w dodatku ToL dostajemy też porcję dinozaurów, z których to część możemy pochwycić i wytrenować niczym rasowy trener Pokemon?

Zaprezentowanie na obrazku niżej zwierzaki to właśnie dinozaury, które wchodzą w dodatku Time of Legends, a każdy z nich posiada odrębny zestaw umiejętności, który może posiąść. Z listy poniżej, jedynie “Anchisaur” i “Allosaur” nie mogą być oswojone. (podajemy ich nazwy po angielsku w cudzysłowie, gdyż, pomimo, iż przetłumaczyliśmy ich nazwy dosłownie, to jeszcze mogą one zostać zmienione, tak, aby pasowały do fabuły i świata Nelderim).

“Dimetrosaur”

Temu potworkowi można dodać tak naprawdę niewiele, gdyż już ma 3 umiejętności, które wcześniej posiada (np.: Mortal Strike), więc możemy mu dodac następujące umiejętności: Poisoning, Poison Breath, Dismount.

“Gallusaurus”

Ten mały dinozaur może posiadać Tradycję Wojenną lub Skrytobójstwo. Dodatkowo, można go uzbroić w następujące ataki i umiejętności: Poisoning, Grasping Claw, Armor Ignore, Armor Pierce, Bladeweave, Bleed, Block, Concussion Blow, Crushing Blow, Feint, Dismount, Force of Nature, Frenzied Whirlwind, Mortal Strike, Nerve Strike, Paralyze, Psychic Attack, Talon Strike.

“Najasaurus”

Ten mały “waż” może posiadać: Poisoning, Battle Defense, Bashing, Piercing, Slashing, Wrestle Mastery, Mana Drain, Repel, Searing Wounds, Sticky Skin, Tail Swipe, Venomous Bite, Vicious Bite, Armor Ignore, Armor Pierce, Bladeweave, Bleed, Concussion Blow, Crushing Blow, Dismount, Feint, Force of Nature, Frenzied Whirlwind, Mortal Strike, Nerve Strike, Paralyze, Psychic Attack, Talon Strike, Aura of Energy, Explosive Goo, Essence of Earth, Aura of Nausea, Poison Breath, Essence of Disease. Dodatkowo, może mieć też wysoką Odporność na Magię, co powoduje, że będzie praktycznie niewrażliwy na wszelkie debuffy.

“Saurosaurus”

Ten dinozaur ma dość niewielką ilość umiejętności, które można wytrenować: Poisoning, Life Leech, Tail Swipe, Concussion Blow.

“Triceratops”

Umiejętności i ataki, jakie może posiąść ten miły grubasek, to: Poisoning, Battle Defense, Bashing, Piercing, Slashing, Wrestle Mastery, Mana Drain, Repel,Searing Wounds,Tail Swipe, Venomous Bite,Vicious Bite, Armor Ignore, Armor Pierce, Bladeweave, Bleed, Concussion Blow, Crushing Blow, Dismount, Feint Force of Nature, Frenzied Whirlwind, Mortal Strike, Nerve Strike, Paralyze, Psychic Attack, Talon Strike, Aura of Nausea, Poison Breath, Essence of Disease. Dodatkowo, na OSI, można go wyposażyć w Healing.

Więcej informacji na temat statystyk, odporności i umiejętności znajdziecie tutaj: https://www.uo-cah.com/bestiary – UWAGA! Ta strona została stworzona przez graczy i informacje mogą być nie dokładne lub nieprawdziwe.

Mały disclaimer – Informacje zawarte w tym wpisie mogą finalnie różnić się od tego co finalnie zastaniecie na serwerze Nelderim.

Dodatkowe pomniejsze zmiany:

  • tytuły związane z karmą, umiejętnościami i sławą zostały wyłączone, tak jak a RunUO
  • wyłączono OSIowe umiejętności rasowe
  • na wyspie “noobów” dodano teleporter prowadzący z wyspy do Komnaty Stworzenia
  • dodano regiony kopania i regiony wyrębu na wyspie “noobów”

Podsumowanie

Tak oto wszystkie duże tematy programistyczne, które chcieliśmy mieć gotowe przed UPem, są gotowe do wstępnego testowania. Oczywiście nie oznacza to, że koniec migracji jest już za rogiem, bo są jeszcze tematy średnie i małe, to wszystko trzeba wytestować i dokręcić, a oprócz tego mamy też bardzo dużo pracy w kwestii zmian na mapie oraz fabuły i budowy świata. Osiągnęliśmy dwa dość spore sukcesy, ale jeszcze bardzo dużo mniejszych większych sukcesów przed nami 😉

Do następnego!

Read More

Nelderim DevBlog #44

Terraformacja Nelderim i obserwacja nieboskłonu to Twój mokry sen, jeśli chodzi o piątkowy wieczór? (No, chyba, że jesteś Drowem, to tylko terraformacja)…jeśli tak, to zapraszamy do przeczytania dzisiejszego DevBloga. Zasiądź wygodnie i zaczynamy!

Jesienne porządki obecnego silnika

Mieliście kiedyś taką sytuację, że chcieliście zrobić coś prostego, ale z biegiem czasu ta prosta czynność nieustannie rosła i rosła?

Otóż my mieliśmy taką sytuację, gdy chcieliśmy uporządkować kod zakrwawionych bandaży, żeby potencjalnie dać im jakieś dodatkowe zastosowanie 🙂

Gdy spojrzeliśmy w kod tych bandaży momentalnie ręce nam opadły, serce zabolało, prawie dostaliśmy raka i coś w nas pękło.

Postanowiliśmy poprawić to raz, a dobrze, żeby nie musieć tego poprawiać drugi raz na ServUO i zaczęliśmy drążyć temat, jak zaktualizować wersję języka C# w obecnym projekcie do kompatybilnej z tym co jest obecnie na ServUO.

Szybkie kopiuj-wklej kawałków kodu i konfiguracji z ServUO, trochę przesuwania rzeczy, kilka potknięć po drodze i udało nam się podnieść wersję języka z 5.0(2012) na 10.0(2021) i co prawda, nie możemy korzystać ze wszystkich nowości, ze względu na wciąż przestarzały .NET Framework 4.8, ale komfort kodowania zdecydowanie nam się podniósł.

Przy okazji wyprostowaliśmy strukturę plików w projekcie, uprościliśmy procedurę budowania projektu, odświeżyliśmy instrukcję pierwszej konfiguracji oraz posprzątaliśmy plik z ustawieniami projektu.

Dodatkowo pozbyliśmy się kilku nieużywanych systemów takich jak ekipowy UOArchitect, IRCBot, czy system akceptacji podań z Nelderim 2.0 😀

No i zakrwawione bandaże po przepisaniu mają 112 linii w porównaniu do oryginalnych 551, i po prostu skopiowaliśmy je w niezmienionej formie od razu do kodu ServUO 🙂

CentrED#

Przez jakiś czas nie pisaliśmy o rozwoju naszego nowego edytora map, ale ostatnio nazbierało się trochę usprawnień, którymi możemy się z wami pochwalić.

Mocny nacisk położyliśmy na to, aby komfortowo dało się korzystać z aplikacji, tak więc dużo pracy poszło na to, żeby aplikacja informowała nas o wszelakich błędach i postępach, zamiast najzwyczajniej zakończyć działanie bez żadnej informacji.

Aplikacja posiada możliwość uruchomienia wbudowanego serwera, żeby uprościć proces edycji mapy użytkownikom.

Dodaliśmy obsługę opcji programu oraz profili użytkownika, żeby nie musieć wszystkiego ustawiać przy każdym uruchomieniu aplikacji.

Nareszcie udało się też dodać okno z minimapą, aby komfortowo przenosić się w miejsce, które aktualnie chcemy edytować, a jako wisienka na torcie, to okno posiada również możliwość zapisywania ulubionych miejsc z opcja szybkiego przeniesienia się 🙂

Oprócz tego było udało się też poprawić masę mniejszych błędów i wprowadzić wiele mikro poprawek i usprawnień takich jak:

  • Poprawne wyświetlanie półprzezroczystych grafik
  • Usuwania koloru z grafik oraz kolorowania grafik bez koloru
  • Próbkowanie grafik oraz kolorów z menu pod prawym przyciskiem myszy
  • Wskazywanie folderu z plikami poprzez okno wyboru
Ilość dostępnych okien potrafi zasłonić nam prawie całą przestrzeń roboczą

Nowy CentrED jest już na tyle stabilny, że postanowiliśmy dodać do repozytorium uprzednio skompilowane paczki, żeby nie było potrzeby kompilować wszystkiego samemu.

Co nowego przynosi ServUO

Każdy z nas lubi spoglądać w gwiazdy od czasu, więc, mimo, że nieba w UO nie widać, to przez teleskop będzie można oglądać gwiazdy.

Astronomia

[tekst został zaadaptowany z oryginalnego artykułu z www.uo.com]

Nowe hobby stało się możliwe w Sosarii – dzięki niedawno dodanemu Teleskopowi (jako prezent na 21 urodziny), postacie mogą podziwiać nocne niebo, obserwując takie zjawiska jak planety, galaktyki, komety i konstelacje. Konstelacje można zaznaczyć za pomocą pióra do Kartografii, aby stworzyć mapę gwiazd.

Teleskop można postawić w domu.

  • Konstelacje można nazwać za pomocą mapy gwiazd. Mapę gwiazd można przekazać Willebrordowi, Astronomowi w Namiocie Astronoma Teleskopu w Moonglow. (na OSI, u nas lokacja nie została jeszcze określona)
  • Gracze, którzy jako pierwsi odkryją konstelację, zostaną odnotowani w rejestrze konstelacji, otrzymają specjalny tytuł i przepis.
  • Z tego przepisu kowale mogą nauczyć się robić jak teleskop.
  • Wszystkie konstelacje są unikalne dla danego serwera. Jest 1000 konstelacji do odkrycia.

W grze dostępna jest księga (screen poniżej), która opisuje jak używać teleskopu. Obecny opis nawiązuje do fabuły i mechaniki OSI. Nasz system czasu działa trochę inaczej, więc będziemy musieli przerobić opis i mechanikę działania, tak aby zsynchronizować to z naszą fabułą i systemem czasu. Opis z księgi pt. “Looking to the Heavens: A Primer on Britannian Astronomy” (robocza nazwa: “Spoglądając ku Niebu: Podstawy astronomii Nelderim”) znajdziemy też tu:

Badania nad astronomią w Britannii sięgają pojawienia się obcych z odległych krain. Kiedy dowiedziano się, że Sosaria istnieje w znacznie większym wszechświecie, ciekawość skierowała nasze głowy w kierunku nieba. Nim człek obdarowany został umiejętnościami umożliwiającymi obserwację obiektów na dużą odległość stały się rzeczywistością – pojawiły się teleskopy. Choć najbardziej imponującym przykładem tych wynalazków jest ten zlokalizowany w Moonglow przy 43° 52′ N, 122° 4′ W, gdzie postanowiłem spędzić swój czas na głębokich badaniach, niedawne postępy w miniaturyzacji sprawiły, że rozmiar tych instrumentów stał się dostępny dla przeciętnego obserwatora.

Korzystanie z teleskopu może wydawać się dość proste, ale byłoby naiwnością sądzić, że nie ma nic poza przypadkowym wskazywaniem ku niebu, aby dokonywać obserwacji!

Najlepsze godziny obserwacji przypadają w nocy między godzinami 17:00 a 4:00 rano. Każdy zegar jest niezbędnym narzędziem do mapowania nieba nocnego!

Chociaż na nocnym niebie można zobaczyć różne obiekty, jeśli skieruje się teleskop na obiekt podążający za gwiazdami, prawdziwe poszukiwania to poszukiwanie konstelacji – unikalnej kolekcji kilku gwiazd.

Konstelacje pojawiają się w różnych okresach nocy. Konstelacje można zobaczyć podczas wczesnego wieczoru (17:00-20:00), późno w nocy (21:00-23:00), północy (24:00) lub w środku nocy (1:00-4:00). Po godzinie 4:00 światło dzienne zagłuszy wszelkie próby dokonywania sensownych obserwacji.

Konstelacje można obserwować w tych przedziałach czasowych na podstawie ich położenia na nocnym niebie. Brytyjscy astronomowie przyjęli system współrzędnych, który używa rektascensji (RA) i deklinacji (DEC), aby dokładnie określić położenie konstelacji podczas nocnych okresów. (screen poniżej)

RA można mierzyć od 0 do 24, a DEC od 0 do 90. Obecne teleskopy są w stanie rozpoznać przyrosty co godzinę RA i 0,2 stopnia DEC.

Gdy określono przedział czasowy i ustawiono RA i DEC, wystarczy uruchomić przełącznik wygodnie umieszczony w celowniku, aby sprawdzić tę część nieba! Jeśli masz szczęście zobaczyć konstelację, standardowym piórem do mapowania można utworzyć mapę gwiazdową. Jako potencjalny odkrywca nowej konstelacji masz okazję nazwać i zgłosić swoje odkrycie do Brytańskiego Towarzystwa Astronomicznego, którego głównym rejestratorem jest ten autor.

Szczęśliwego obserwowania nieba!
Willebrord Astronom

[Jako, że fabuła i mechanika czasu Nelderim różni się w stopniu dość znacznym od OSI, informacje zawarte w powyższym opisie moga różnić się od finalnej wersji, którą zobczycie na serwerze]

Przenoszenie zmian z RunUO

Zmiany, które przeniesliśmy z RunUO na ServUO w ostatnim czasie, to:

  • pack instinct dla craftowanych przywołańców nekromanckich
  • 4 poziom zleceń myśliwskich
  • poprawka prawie 16-letniego problemu z NPCami spawnującymi się bez imienia
  • zoptymalizowany kod zakrwawionych bandaży
  • dorzucenie Zdrajcy Pana do puli bossów

Podsumowanie

Niebo i ziemia były tematem dzisiejszego DevBloga. Mamy nadzieję, że za 2 tygodnie wrócicie po więcej, a my, że będziemy mogli się pochwalić większą paczką zmian i poprawek. Do następnego!

Read More

Nelderim DevBlog #43

Witamy ponownie i zapraszamy na kolejną porcję postępów z prac nad migracją.

Postępy prac ServUO

Przez ostatnie 2 tygodnie udało nam się ruszyć kilka mniejszych tematów, a także wstępnie zamknąć jeden większy temat, który zdecydowanie zbyt długo leżał częściowo rozgrzebany.

Większym tematem było dokończenie przenoszenia zmian na nowego klienta, a zajęło nam to tak długo, ponieważ zbyt pochopnie nałożyliśmy paczkę zmian znalezioną w Internecie, która ostatecznie się nie sprawdziła i zdecydowaliśmy się ją wycofać.

Gotowe paczki zmian z Internetu zazwyczaj są bardzo proste do zaaplikowania, jednakże żeby odkręcić ich efekt, potrzeba dość sporo pracy i planowania, żeby w procesie nie uszkodzić plików klienta i nie narobić sobie jeszcze więcej problemów.

Na nasze szczęście, tym razem odwracanie zmian odbyło się bezboleśnie i mamy nadzieję, że temat przenoszenia zmian do nowego klienta będziemy mogli nareszcie zamknąć na dobre 🙂

Co do mniejszych tematów, z którymi się uporaliśmy, lista prezentuje się tak

  • Zakończyliśmy (przynajmniej na tę chwilę) dodawanie znaków na “wyspie n00bów”.
  • dodano komendę AFK, która docelowo ma włączać się automatycznie i wyświetlać emocję *drzemie*/ *śpi*
  • udało się przenieść region podróży, region kopalni Drowów
  • naprawiliśmy punkty wytrzymałości magicznych ksiąg oraz ich naprawianie i podsypywanie proszkiem
  • Poprawiliśmy umiejętności bojowe niektórych potworów, dla których niepoprawnie liczył się wskaźnik trudności.

Co nowego przynosi ServUO

ServUO przynosi usystematyzowane podejście do umiejętności specjalnych dla stworzeń, a także wprowadza nowe umiejętności specjalne.

W grze Ultima Online istnieje wiele zdolności, z których twój pupil może wybierać.

Poniżej znajdziesz listę różnych specjalnych zdolności, ruchów specjalnych i czy umiejętności obszarowych, jakie gra oferuje twojemu zwierzakowi.

Zdolności specjalne:

  • Angry Fire (Ognistey Gniew)-> stworzenie zadaje niszczące ataki ogniem (51 – 81 obrażeń).
  • Conductive Blast (Wybuch Przewodzący)-> obniżenie odporności na energię celu (10 obrażeń).
  • Dragon Breath (Smoczy Oddech) -> zadaje niszczycielskie obrażenia w oparciu o własne zdrowie.
  • Grasping Claw (Chwytający Pazur)-> stworzenie używa swoich pazurów, aby rozszarpać cel, co skutkuje utratą odporności fizycznej i obrażeniami fizycznymi (32 – 70 obrażeń).
  • Inferno -> stworzenie otacza swoje cele ogniem, powodując obniżenie odporności na ogień i miażdżące obrażenia od ognia (46 – 79 obrażeń).
  • Life Leech -> Wysysanie życia, tak samo jak na broni
  • Lightning Force -> stworzenie atakuje energią i ma szansę na ogłuszenie (44 – 59 obrażeń).
  • Mana Drain -> Wysysanie many, w ten sam sposób, co czar z Magii
  • Raging Breath -> stworzenie używa ognistego oddechu zadając nagły ogień, który utrzymuje się w czasie (20 Początkowe Obrażenia, 10 “Impulsów” po 10 Obrażeń, Łącznie 125 Obrażeń)
  • Repel (Odbicie) -> 50% nadchodzących obrażeń zostają odbite na napastnika.
  • Rune Corruption -> powoduje redukcję odporności na obrażenia celu.
  • Searing Wounds -> stworzenie przypala atakujących, co skutkuje zmniejszeniem skuteczności leczenia (3-8 obrażeń).
  • Steal Life (Okradnięcie z Życia) -> stworzenie atakuje obrażeniami od energii, które przekształcą część tych obrażeń w zdrowie w ciągu pewnego czasu. (45 Początkowe Obrażenia, 5 “Okresów “Implusów” po 5 Obrażeń, 70 Łączne Obrażenia)
  • Sticky Skin (Przylepna Skóra) -> spowolnienie prędkości ataku u atakujących.
  • Tail Swipe (Uderzenie Ogonem) -> stworzenie wstrząsa ogonem w kierunku celów, co skutkuje bezpośrednim zadaniem obrażeń oraz szansą na paraliż i dezorientację, prowadzącą do obniżenia inteligencji i zręczności (30 obrażeń).
  • Venomous Bite (Jadowite Ukąszenie) -> że stworzenie zatruwa wszystkie pobliskie cele (Maksymalnie 4 poziom trucizny).
  • Vicious Bite (Złowieszczy Gryz) -> stworzenie zadaje swoim celom, powodując obrażenia w czasie (0 Obrażeń początkowych,5 Obrażeń po 60 s,+5 Obrażeń co 20 s aż do 50 Obrażeń, 275 Obrażeń w ciągu 200 s)

Umiejętności obszarowe:

  • Aura of Energy (Aura Energii) -> obrażenia energetyczne w pobliżu celów (10 obrażeń co 5 sekund otrzyma każdy cel w promieniu 5 kratek.).
  • Essence of Disease -> to samo co wyżej, z tym, że od trucizny
  • Essence of Earth –> to samo co wyżej, ale obrażenia fizyczne
  • Aura of Nausea (Aura Mdłości) -> pobliskie cele otrzymują karę obniżonej szybkości ciosów, szansy trafienia, szansy obrony i szybszego rzucaniem zaklęć.
  • Explosive Goo (Wybuchowa Masa)-> tryskająca lawa trafia w pobliskie ofiary, zadając obrażenia od ognia (Tworzy reakcję łańcuchową wybuchów, która przeskakuje na wiele celów w ogromnym promieniu, zadając około 50 obrażeń każdemu.).
  • Poison Breath (Trujący Oddech) -> śmiercionośny podmuch trucizny w pobliżu celów (Nakłada truciznę aż do 4 poziomu (w zależności od umiejętności Zatruwanie) na wszystkie cele w dużym obszarze wokół zwierzaka.

Ruchy specjalne:

  • dokładnie takie same jak mają bronie

(wszelkie tłumaczenia nie są ostateczne i mogą ulec zmianie)

Podsumowanie

Na ten moment to już wszystko z naszej strony i jak zawsze, widzimy się za dwa tygodnie.

Read More

Nelderim DevBlog #42

Dzisiejszy DevBlog jest dość obszerny, więc złapcie za napitek i zapraszamy do czytania 🙂

Garść poprawek

Ostatnio trochę czasu poświęciliśmy na analizę oraz naprawianie problemów wykrytych podczas ostatnich testów ServUO i na pierwszy ogień poszedł problem zapowiadający się prosto, polegający na tym, że kupcy obsługują graczy bez względu na to czy są na wierzchowcu, czy stoją za ścianą.

Zagłębiając się w kod, szybko doszliśmy do wniosku, że z samymi komendami jest wszystko w porządku, a to system języków powoduje problemy i taki błahy problem naprowadził nas ja k naprawić problem dużo większego kalibru.

W skrócie, system języków był wpięty nieprawidłowo w funkcję obsługującą mowę istot świata Nelderim, przez co ogólnie “mówienie” wyglądało jakby działało, ale tak na prawdę tylko wyglądało.

Na szczęście tym razem udało się uniknąć przepisania całego systemu, a wystarczyło zaledwie przesunąć “tłumaczenie” kawałek dalej i zintegrować bardziej z tym co jest, aniżeli tak jak próbowaliśmy dotychczas, zaimplementować całą funkcję mowy w naszym systemie języków.

Przy okazji udało nam się namierzyć też malutki błąd, gdzie czasami bez znajomości języka, możliwe było tłumaczenie niektórych słów.

Po wprowadzeniu tej poprawki, jak ręką odjął, zaczęły działać komendy kupców, komendy zwierząt, komendy statków, NPC byli w stanie mówić językami i przestały pojawiać się jakieś bardzo dziwne artefakty podczas rozmowy

Po lewej, jeden gracz rozmawia z NPC po elficku, po prawej gracz nie znający tego języka

A co do samego problemu obsługi gracza na wierzchowcu, wszystko zaczęło działać jak należy, gdy przetestowaliśmy to z poziomu gracza 😉

Oprócz tego udało się również naprawić kilka mniejszych problemów na ServUO. W końcu dopięliśmy sprawę złego wyświetlania w gumpie przedmiotów tworzonych przez skrybę. Obecnie wygląda to tak:

Wcześniej wyświetlały nam się 2 grupy Inne. Umiejętności specjalne zostały wyniesione z grupy Inne. Grupa Inne obecnie zawiera księgi, przedmioty questowe, czyste zwoje, etc.

Kolejny problem, z którym się borykaliśmy, to problem z dodaniem do NPCa możliwości nauczenia się umiejętności Rzucanie. Kaczy odkrył, iż informacja jest wysyłana do klienta oraz, że brakuje cliloca, który by to wyświetlał, więc w umiejętnościach NPC Kowala oraz Skrytobójcy dodano Rzucanie i dopisano w Cliloc.mul brakujące wpisy o uczeniu się umiejętności Rzucanie.

Co nowego przynosi ServUO

W DevBlog#4 trochę prouszyliśmy już temat statków. Tym razem chcemy wam przedłożyć dokładnie jak to wygląda.

Ultima Online: High Seas to rozszerzenie (także znana jako “booster”) wydany 12 października 2010 roku wraz z patchem 68. Opublikowano je po raz pierwszy podczas spotkania UO Town Hall, które odbyło się 28 sierpnia 2010 roku w siedzibie EA Mythic/Bioware w Fairfax, w stanie Wirginia. Pierwotnie nosiło tytuł Adventures on the High Seas, ale później zostało skrócone do samego “High Seas”.

Co otrzymujemy z tym boosterem?

Nowe Statki

Nowa klasa statku, Galeon, która występuje w trzech odmianach:

  • Galeon Orków – 3 działa z każdej strony
  • Galeon Gargiszów – 3 działa z każdej strony
  • Galeon Tokuno – 2 działa z każdej strony
  • Statek Brytyjski – 4 działa z każdej strony, 2x 1-płytkowe dodatki do domu, najwolniejszy ze wszystkich statków
  • Statki można malować farbą do łodzi, w różnych odcieniach
  • Nowe Łodzie umożliwiają dostęp do brzegu
  • Ograniczenie jednego statku i jednej łodzi na postać na wodzie w danym czasie.

Ruch Statków

  • Ruch łodzi został naprawiony, statki poruszają się płynnie, bez pomijania animacji
  • Łodzie mogą teraz poruszać się trzema różnymi prędkościami
  • Można nimi sterować za pomocą myszy, zamiast komend głosowych, poprzez dostęp do kierownicy statku
  • Nowe metody wchodzenia na pokład statków za pomocą Linii Cumowniczej, zastępując uciążliwą metodę z użyciem deski
  • Jeśli jesteś sojusznikiem, w tej samej gildii, w drużynie lub otrzymałeś dostęp, możesz wejść na statek, dwukrotnie klikając Linie Cumowniczą
  • Jeśli statek jest wystarczająco uszkodzony, możesz wejść na pokład bez zgody (dotyczy zarówno statków graczy/NPC)

Broń Statków

  • Łodzie posiadają kilka stanowisk, na których można umieścić działa (obecnie cztery rodzaje: Karona, Kulembaga, Blundercannon i Dragon Cannon)
  • Wieloetapowy system strzelania (ładowanie, przygotowanie, strzelanie)
  • Amunicja wytwarzana przez Kowalstwo, a inne zapasy/składniki wytwarzane są za pomocą Majsterkowania, Alchemii, Krawiectwa i Gotowania.
  • Kule armatnie – do strzelania do innych statków i dużych potworów
  • Śrut – do walki przeciwko ludziom i niszczenia armat
  • Armaty są wytwarzane za pomocą Kowalstwa

Uszkodzenia i Naprawa Statków

  • Łodzie będą wyświetlać coraz większe ilości odniesionych uszkodzeń (obecnie 3 stany uszkodzeń). Nakierowanie myszą na sternika pokaże ilość uszkodzeń
  • Brak lub Niewielkie – Brak widocznych uszkodzeń
  • Średnie – Statek ma uszkodzone części i może poruszać się tylko powoli
  • Ciężkie/Ekstremalne – Statek jest unieruchomiony i może na niego wejść każdy
  • Gdy statek jest bardzo uszkodzony, nie może podróżować. Nagłe naprawy pozwolą statkowi pokonać krótkie odległości, zanim naprawy się wyczerpią
  • Łodzie mogą być naprawiane przez każdego, kto ma wystarczająco dużo materiałów – płótna i drewna
  • Gracze posiadający Stolarstwo lub Krawiectwo mogą naprawiać statki zużywając o 50% mniej zasobów

Statki Pirackie/Kupieckie

  • Punkty trasy NPC
  • Unikalne załogi
  • Możliwość zaatakowania
  • Mogą bronić się za pomocą dział i ataków z dystansu
  • Okazjonalnie zrzucają skrzynie z kontrabandą oraz snop siana jako łup

Na OSI otrzymujemy również morski ryneczek. Więcej o nim więcej w tym artykule.

Ulepszono też profesję wędkarską, o czym powiemy też więcej niebawem.

Podsumowanie

Dzięki wielkie za wytrwanie przez tę ścianę tekstu. Do następnego 🙂

Read More

Nelderim DevBlog #41

I oto kolejny piątek nadszedł, a znim nastał DevBloga początek, więc otwórzcie zimne i pieniste, i zacznijcie czytać co dziś przygotowaliśmy dla was.

Podział dungeonów na podregiony

Udało nam się zakończyć podziały dungeonów na podregiony oraz podpinanie ich pod spawnery.

Powyżej macie pełną listę dungeonów, które zostały podzielone na podregiony na nowo i/lub zostały podpięte pod spawnery.

Jak wiecie, ten temat przewijał się w DevBlogach od dawna. Sam pomysł narodził się w DevBlog#3, gdy kaczy zaprojektował system gradacji mobów i właśnie to z myślą o nim ten podział został dokonany.

Ilości potworów w regionach oraz same podziały będą jeszcze “dokręcane”, więc wszelkie sugestie związane z poszczegółnymi dungeonami prosimy kierować do odpowiedniego działu na Discord.

Co nowego przynosi ServUO

Primeval Lich Spawn został dodany wraz z rozszerzeniem Stygian Abyss. Jest umiejscowiony w podziemiu dungeonu Stygian Abyss.

Etap 1 – rozpruwacze i nietoperze wampiry
Etap 2 – golemy krwii i mroczne smugi
Etap 3 – nieumarłe gargulce i ludzkie widma
Etap 4 – kościane smocze pisklęta i senne zjawy
Champion – Primeval Lich (nazwa polska wciąż w opracowaniu)

Dekoracje, które można zdobyć na spawnie:

W miarę postępu spawnu, pojawia się więcej dekoracji w obszarze champa. Istnieją cztery różne etapy dekoracji: gdy spawn zaczyna się (jeżyny, opadłe gałęzie, itp.), częściowo przez pierwszą falę (groby, nagrobki, itp.), częściowo przez drugą falę (lawa, czaszki demonów, itp.) i częściowo przez trzecią falę (pręgierz, wózek z rudą, itp.). TUTAJ można zobaczyć jak one wyglądają.

Ewolucja etapów następuje, gdy pojawia się nowa czerwona świeca, chociaż dokładna świeca zależy od tego, ile czerwonych świec pojawiło się na początku spawnu. W każdym etapie dekoracji istnieje szansa, że LOSOWY element dekoracyjny, który pojawił się dotychczas, zostanie zduplikowany na ziemi w pobliżu oryginalnego elementu. Tylko DWA etapy dekoracyjne wyprodukują zduplikowany element dekoracyjny na jeden spawn, a jest to losowe dla każdego spawna.

Więcej wskazówek jak zdobywać te przedmioty znajdziecie tutaj.

Testy, teściki

Podczas krótkich testów, które zostały przeprowadzone 27.09.2023 sprawdzone zostały poszczególne taski:

  • przetłumaczone komendy na statku
  • czy sternik reaguje na komendy w języku rasowym
  • tłumaczenie questa od tresera zwierząt
  • czy szczepki i nasiona się stackują
  • czy wyświetla się nazwa księgi mistycyzmu
  • test zmiany nadgonionej z RunUO związanej z czarami Magii Natury i Okultyzmu, które przyciągały straż, a teraz mają ją wykluczać z mobów, które będą przyciągane
  • test zmiany nadgonionej z RunUO związanej ze zmianą materiału masek na skórzane
  • testy systemu języków i procentowej znajomości poszczególnych języków
  • testy tego czy imiona w immiennych potoworach się wyświetlają

Podsumowanie

I to tyle w dzisiejszym DevBlogu. Dzięki za przeczytanie 41 wydania i widzimy się w kolejnym, za 2 tygodnie 🙂

Read More

Nelderim DevBlog #40

Parafrazując słowa jednego ze wspaniałych polskich wykonawców: “Czterdzieści DevBlogów minęło jak jeden dzień…”, przychodzimy do was z kolejną porcją zmian i nowości, także zapnijcie pasy, otwórzcie dowolny napój i przygotujcie kanapeczki. Zaczynamy! 🙂

Osiągnięcia

O osiągnięciach, które pojawią się na ServUO dość ogólnikowo pisaliśmy już w DevBlog #34, jednakże ostatnio pojawiły się w tym temacie pierwsze konkrety.

Zaczęliśmy powoli implementować poszczególne rodzaje osiągnięć i dość szybko okazało się, że system wymaga kolejnej partii przeróbek, aby ulepszyć czytelność definicji osiągnięć, a także ograniczyć ilość błędów podczas tworzenia nowych osiągnięć.

Po trzech iteracjach zmian w systemie, nareszcie udało nam się osiągnąć zadowalający efekt i mogliśmy przystąpić do implementacji konkretnych osiągnięć.

Na chwilę obecną mamy w kodzie trzynaście rodzajów celów, które system śledzi i może przyznawać osiągnięcia, a lista ta z czasem będzie się rozwijać.

Na potrzeby testów mamy również trzynaście zdefiniowanych osiągnięć i pierwsze testy zakończyły się pozytywnie.

Testy, testy i jeszcze raz testy

Od ostatnich testów nazbierało się sporo spaw do sprawdzenia. Testy, które przeprowadziliśmy 03.09.2023 poświęcone były 2 różnym stronom pracy nad rozwojem serwera.

  1. CentrED, nad którym Kaczy intensywnie pracuje już od bardzo dawna. Testowaliśmy między innymi budowanie, kolorowanie, responsywność nowego interfejsu i wszystko lub prawie wszystko działa poprawnie. Parę funkcjonalności wymaga jeszcze dokręcenia, ale z grubsza wydaje się, że działa.
  2. ServUO od strony mechanicznej. Tutaj mieliśmy sporo zmian, które musieliśmy nadgonić z RunUO, ale i wykonać zadania, które od dawna nam wisiały na tablicy.

Robiliśmy dalsze testy systemu imion, i, jakby tu zacytować Kaczego, “przecież kurka działało”. No, ale nie działa. Wyświetlanie imion u innego gracza nie działa poprawnie. Na powyższym screenie możecie zobaczyć sytuację, w której moja postać w zielonym nie powinna znać imienia Kacak Zyberg, więc przezwała sobie go KWAKERS. Niemniej jednak, po najechaniu na postać, zamiast widzieć przezwisko, widzi faktyczne imię.

Z perspektywy innej postaci: mój wierzchowiec jest dla mnie nazwany tak jak trzeba. Zwierzę innej osoby (innej mojej postaci w tym wypadku) widnieje jako “zwierze”, a Kacak Zyberg przy Ctrl+Shift wyświetla się jako nieznajomy krasnolud (choć po najechaniu myszą na niego wyświetla się faktyczne imię). Zwłoki zaś dla każdego, włącznie z nami, będą widziane jako Zwloki (rasa).

Kolejny dziwny problem pojawił się tutaj: imiona straży, mieszczan są widziane normlanie, ale zaś imiona vendorów graczy mają ten sam problem, co na screenie nr 1.

Obecnie pracujemy nad poprawieniem tego systemu.

System języków też nam się trochę rozjechał. Słowa-klucze (keywords), czyli takie jak “kup”, “zlecenie”, itp. źle się wyświetlają.

Kolejna kwestia do poprawy w autorskim systemie.

Przetestowaliśmy też wszystkie zmiany opisane w DevBlog#39. Większość z nich dostała zielone światło. Po drodze wyniknęło kilka nowych spraw do poprawy, niemniej jednak, pasku postępu poruszył się z marnych 36% na dumne

Patroni otrzymali od nas 5-mintowe wideo-teaser testów. W przyszłości chcemy wypuścić wideo z wcześniejszych oraz przyszłych testów, byście mogli mieć więcej wglądu w to co robimy, więc, jeśli chcesz wiedzieć więcej, to zapraszamy do pozostania naszym Patronem 🙂

Co nowego przynosi ServUO

Abyssal Infernal Spawn został dodany wraz z rozszerzeniem Stygian Abyss. Miejsce to znajduje się na skalistym terenie otoczonym lawowymi strumieniami i otchłanią.

Cały obszar spawnu jest objęty zasadami Felucca, co oznacza, że ​​może tam występować PVP, a Mordercy mogą tam wejść, tak jak na innych Championach. Kradzież poprzez jest również dozwolona.

Istnieją dwie wejścia do spawnu (na OSI). Jedno z nich znajduje się na 3. poziomie Hythloth w Facet Felucca, niedaleko schodów na 4. poziom (u nas jeszcze nie wiemy gdzie to wejście będzie). Drugie znajduje się w Dungeons of Stygian Abyss.

Fale:

Ten champ ma standardowo 4 fale. Na falach pojawiają się znane nam już moby, ale i też kilka nowych. (więcej na uoguide).

Podsumowanie

Czterdziesty DevBlog już za nami, a my wracamy do pracy, żeby było o czym pisać w części czterdziestej pierwszej 🙂

Jak zawsze, dajcie nam znać na Discordzie co sądzicie o nadchodzących zmianach.

Do następnego!

Read More

Nelderim DevBlog #39

Nasza osłabiona przez żyćko i wakacje armia GMów działa na wielu frontach jednocześnie. Kapitan Kaczy dzielnie rozwija CentrEDa i równocześnie łata RunUO, Kapral Maupishon stara się utrzymać balans między questowaniem, commitami na RunUO i poprawkami/zmianami na ServUO. To tyle jeśli chodzi o briefing.

Jeśli jesteście gotowi na Misję DevBlog #39, to zapnijcie pasy, bo właśnie ruszamy!

CentrED#

Ostatnim razem temat nowego CentrEDa zakończyliśmy stwierdzeniem, że naszym następnym krokiem będzie implementacja pierwszych narzędzi do edycji mapy i w zasadzie ten temat zajął całe dwa tygodnie 🙂

Na pierwszy rzut poszło okno wyboru obiektów, które chcemy dodać do mapy.

Wydawać by się mogło, że będzie to proste, jednakże naiwne podejście do tego tematu pokazało nam, że trzeba się trochę postarać, ponieważ wydajność takiego najprostszego rozwiązania powodowała, że cała aplikacja była nieużyteczna.

Jedna z pierwszych wersji okna wyboru obiektów.

Okno wyboru otrzymało również możliwość filtrowania po nazwie oraz ID obiektu, dla wygody edytorów, ponieważ szukanie konkretnego obiektu z listy na której jest kilkadziesiąt tysięcy pozycji, może okazać się okropnie trudne 🙂

Następnym w kolejce było podobne okno, ale z możliwością wyboru koloru dla naszych obiektów.

Tutaj poszło zdecydowanie sprawniej bo już było wiadomo co i jak nauczeni doświadczeniem przy tworzeniu poprzedniego okna 🙂

Tutaj również pojawiła się opcja szukania koloru po numerze albo po przydzielonej nazwie.

Przy okazji udało się zoptymalizować tu i tam, a także wykonać testy wydajnościowe na dość budżetowej maszynie, i szału nie ma, bo aplikacja wyciąga jakies 10-15FPS, ale na upartego będzie się dało z tym pracować nawet na słabym sprzęcie, a możliwości dalszej optymalizacji jeszcze trochę się znajdzie 🙂

Mając możliwość wyboru co chcemy dodawać, przyszła kolej na konkretne narzędzia.

Systematycznie implementowane były coraz to kolejne narzędzia i na chwilę obecną mamy:

  • Wybieranie(Select)
  • Rysowanie(Draw)
  • Usuwanie(Remove)
  • Przesuwanie(Move)
  • Zmienianie wysokości(Elevate)
  • Kolorowanie(Hue)

Do tego wszystkie narzędzia zostały wyposażone we wskazówki wizualne, jaka zmiana zostanie wprowadzona z naszym kliknięciem, a jest to coś czego stary CentrED nie potrafił 🙂

Tak się prezentuje intencja usunięcia korony drzewa
Podobna wskazówka jest dla zmiany wysokości obiektu
A także dla przesuwania obiektów

Dodatkowo w międzyczasie udało nam się poprawić kilkanaście przeróżnych baboli w przeróżnych częściach klienta i serwera.

Powoli zbliżamy się do końca pierwszego etapu rozwoju CentrED# i możemy wam zdradzić, że już mamy zaplanowaną sesję testową tego narzędzia, żeby wyłapać ewentualne niedociągnięcia, więc w następnym DevBlogu na pewno będziemy mieć o czym pisać 🙂

Zmiany i poprawki w kodzie

Poza tym co przeczytaliście wyżej, zaczęliśmy nadganiać też zmiany z RunUO oraz wprowadzać pewne pomniejsze poprawki/sugestie, które wisiały nam na Trello już od jakiegoś czasu 🙂

  1. Jedną z nich było właśnie zmniejszenie częstotliwości rzucania tekstami przez mieszczan oraz uniezależnienie owych wypowiedzi od ruchu wokół NPCów. Obecnie wystarczy, że gracz znajduje się wokół NPCów. NPC nie będą wliczać ekipantów, co obecnie miało miejsce.

2. Kolejnym nadgonieniem zmian było przeniesienie zmiany, która miała przeciwdziałać ściąganiu straży za pomocą czaru Gnijące Zwłoki/CiekawyKamień (Okultyzm/Magia Natury).

3. Przenieśliśmy też już część regionów – w tym rzucie były to Kopalnie w Podziemiach u Drowów.

4. Poprawiliśmy błędnie wyświetlające się przedmioty w menu Inskrypcji.

5. Przenieśliśmy też zmianę powodującą, iż sternik reaguje na komendy w językach rasowych.

6. Dodatkowo, przetłumaczyliśmy OSIowy autoquest od Tresera Zwierząt.

7. Zmniejszyliśmy też szansę na dispell od czarujących potworów z 75% na 15%. Dzięki temu granie przywołańcami w końcu będzie możliwe.

8. Zweryfikowaliśmy też ilości pozyskiwanych surowców za pomocą umiejętności Drwalstwo, Górnictwo i Pasterstwo, gdyż ta ilość została zmieniona względem OSI już na Nelderim 2.0.

Co nowego przynosi ServUO

Stygijski Smok (nazwa robocza) to jedno z unikalnych stworzeń znajdujących się w Lochach Stygijskiej Otchłani. Aby zdobyć 4 Smocze Kule z holu przed wejściem do owego smoka, należy zabijać małe smoki spawnujące się przed wejściem. Następnie należy ich użyć ich na ołtarzu przy 128º N, 67º W (na oryginalnej mapie) wewnątrz Lochów Stygijskiej Otchłani. Jak w przypadku każdego unikalnego potwora, do jaskini może wejść jednocześnie grupa dziesięciu osób.

Smoczysko potrafi czarować, stawiać ściany ognia, ziać ogniem i rzucać deszcz meteorytów.

Podsumowanie

Taka całkiem pokaźna paczka zmian i poprawek podsumowuje ten ostatni wakacyjny moment. Mamy nadzieję mieć więcej czasu i więcej zasobów, które możemy przeznaczyć na rozwój ServUO. Tymczasem, tyle na dziś.

Niech was Pan/Śmierć/Loethe/Matka (czy kto tam chcecie) prowadzi!

Read More

Nelderim DevBlog #38

Uff, jak gorąco.

Ostatnie upały ostro dały nam się we znaki, a ulewy z piorunami nie zachęcały do siedzenia przy włączonym komputerze.

Jednakże nie powstrzymało nas to przed dowiezieniem DevBloga z tylko malutką obsuwą, niezależną z resztą od pogody 🙂

CentrED#

Mamy nadzieję, że temat nowego edytora map wam się jeszcze nie przejadł 😀

Pierwszym wyzwaniem ostatnich dwóch tygodni było zaimplementowanie możliwości zaznaczania poszczególnych obiektów na mapie za pomocą myszy i jak się przekonaliśmy, nie jest to takie proste zadanie.

Na samym początku należało w ogóle zapoznać się z tematem i poznać istniejące rozwiązania, aby nie wymyślać koła na nowo.

Po dość obszernym googlowaniu, udało się wyodrębnić dwie metody, które potencjalnie pasowałyby do naszego edytora:

  1. Mouse Picking with Ray Casting
  2. Framebuffer 3D Color Picking

Na pierwszy rzut oka, pierwsza metoda wydawała się prostsza, jednakże po wstępnym eksperymencie, okazało się że wykrywanie przezroczystości w grafikach będzie wymagało zdecydowanie zbyt wiele pracy i ta metoda, raczej sprawdziła by się w pełni trójwymiarowej aplikacji z pełnoprawnymi modelami 3D.

Druga metoda posiada tą przewagę, że dużo obliczeń jest wykonywane przez kartę graficzną i wiele problemów najzwyczajniej rozwiązuje sie samo, jednakże nie udało się znaleźć żadnego pełnego przykładu użycia tej metody z naszym językiem programowania i frameworkiem graficznym.

W praktyce, metoda ta okazała się być banalnie proste w implementacji i po dosłownie kilku iteracjach udało nam się osiągnąć sukces 🙂

Poniżej możecie zobaczyć jak “wygląda” zastosowanie takiej metody. 🙂

Kolor kodowanie poszczególnych grafik w osobnym buforze graficznym, bez obsługi przezroczystości.
Prawie kompletny obraz, z obsługą przezroczystości oraz poprawnym formatem kolorów, teraz już chyba poznajecie co to za miejsce 🙂

Teraz wystarczy tylko odczytać kolor pixela pod kursorem, odkodować z tego numer obiektu i gotowe.

Proste, prawda? 🙂

Mając zaimplementowaną obsługę myszy, szybko przydrutowaliśmy tu i tam i w efekcie udało nam się wykonać pierwsze edycje w postaci podmiany grafiki kilku obiektów 🙂

Widzicie co się zmieniło?

Przy okazji bardzo proste okazało się dodanie możliwości zmiany rozmiaru okna i nie jesteśmy już teraz limitowani do zaledwie 1024×900 pikseli 😀

Po uzyskaniu kilku punktów umiejętności w renderowanie do przeróżnych buforów graficznych, okazało się, że bardzo proste jest renderowanie obrazu w dowolnej rozdzielczości prosto do pliku!

Tak więc możecie zobaczyć na własne oczy tasandorę w rozdzielczości 16K, tylko uwaga, ponieważ zajmuje to bagatela 300MB.

TASANDORA_16K.jpg

Jeżeli macie wrażenie, że może się to bardzo przydać do tworzenia map użytych na naszej stronie www, to macie rację i na pewno skorzystamy z takiej możliwości 🙂

Następnym krokiem było stworzenie prototypów pierwszy narzędzi edytora, aby zobaczyć z czym to się je i czy komunikacja z serwerem na pewno działa ( oczywiście nie działała ) i powstały bardzo prymitywne, aczkolwiek użyteczne narzędzia do kolorowania obiektów i zmiany wysokości obiektów.

Proste testy tychże narzędzi wykazały, że architektura klienta nie ma prawa działać i należało ją dość mocno zmienić, żeby miało to ręce i nogi.

W międzyczasie poprawiania klienta, udało się również stworzyć pierwszą, już funkcjonalną iterację okienka logowania do serwera, a także wspaniałą funkcję startowania lokalnego serwera z poziomu klienta.

Ostatecznie udało nam się wyprostować sytuację nowego klienta, a naszym następnym celem jest zaimplementowanie pierwszego zestawu narzędzi edytora, a pierwsze efekty prezentują się następująco

Ostatnie podziały:

Jak ostatnio informowaliśmy, jesteśmy na końcówce podziału dungeonów na podregiony. Z racji dość obłożonego grafiku naszych ekipantów, udało się jedynie podzielić jeden kolejny Dungeon – Leże Lodowych Smoków.

Do podziału został jeszcze Gorogon, potem tylko wpięcie wszystkiego w spawnery i system jest gotowy pod gradację mobów na ServUO 🙂

Powyżej przykład istniejącego już spawnera, który jest wpisany w jeden z regionów. Później będziemy mogli w pliku XML nadać intensywność danego poziomu moba w danej puli regionu.

Co nowego przynosi ServUO

Dzisiejszy wpis o ServUO ucieszy w szczególności Drowy. Mamy do zaprezentowania nowego bossa – pająka: Navrey (nazwa robocza: Navrey Nocne-Oko), która znajduje się w OSIowym dungeonie Underworld.

Jest podatna na typy zabójców Arachnidów i Pająków. Posiada potężne zaklęcia, potężne ataki wręcz oraz zdolność paraliżowania postaci za pomocą rzuconych sieci.

(fragment przetłumaczony z oryginalnego artykułu z uoguide – informacje mogą różnić się od tego co finalnie zastaniecie na servuo)

Powszechnie uważa się, że jest to możliwe, ale trudne, aby gracze mogli ją zabić samodzielnie. Niektóre dialogi (z questa, który można wziąć od goblina w dungu) sugerują, że efektywnie rządzi jednym z plemion Goblinów znalezionych w Podziemiach. Można ją znaleźć w Leżu Navrey Night-Eyes, do którego można się dostać przez teleporter na 57° N, 17° W, wewnątrz dungeonu Underworld.

Kiedy postać zostanie sparaliżowana jej rzuconą siecią, może uciec, zakładając i zdejmując Kamienne Buty (Artefakt z dodatku SA). Mikstury niewidzialności również działają, gdy jesteśmy w sieci, ale nie pomogą, gdy rzuci na nas zaklęcie “Reveal”.

Podsumowanie

Jak widać, prace cały czas trwają i pewnie jeszcze trochę potrwają, ale systematyczność i upór z pewnością doprowadzą nas do końca migracji 🙂

Do następnego!

Read More

Nelderim DevBlog #37

Witamy serdecznie w pierwszym DevBlogu po pierwszym oficjalnym zlocie tej edycji Nelderim 🙂

Świetnie się bawiliśmy, ale mimo wszystko nie zwalniamy tempa i przychodzimy do was z kolejną porcją nowości i postępów!

Dalsze prace nad CentrEDem

Przez ostatnie dwa tygodnie lwia część naszego wolnego czasu została zainwestowana w rozwój nowego CentrEDa.

Udało się znacząco zoptymalizować renderer i na sensownym zbliżeniu wszystko działa bardzo płynnie, pomimo, że wciąż jest jeszcze bardzo duże pole do dalszej optymalizacji.

Wyeliminowaliśmy też problem migoczących obiektów, który fachowo nazywa się Z-fighting, a także problem niektórych obiektów przenikających przez teren.

Potwierdziliśmy również że komunikacja z serwerem w czasie rzeczywistym działa i edycje wykonane przez innych użytkowników widoczne są w aplikacji.

Przeprowadziliśmy pierwsze próby interfejsu graficznego i zapowiada się obiecująco.

Udało nam się również nareszcie wprowadzić obsługę kolorów Ultimy i świat prezentuję się dokładnie tak jak powinien 🙂

Osiagnęliśmy chyba wszystko jeżeli chodzi o zoom 🙂
Nareszcie udało się wprowadzić obsługę kolorów + prototypowy interfejs

Poniżej możecie również znaleźć kilka krótkich nagrań z postępów

Testowanie współczynnika wysokości
Pierwsze wizualne potwierdzenie komunikacji z serwerem

Jak widać, postęp jest dość spory i możliwe, że już niedługo uda się zrobić pierwsze edycje nowym edytorem 🙂

Dalsze podziały

Jak już wiecie, od długiego czasu staramy się po trochu dzielić obecnie istniejące dungeony, na mniejsze części, które mają posłużyć, jako podsystem wspomagający segregację mobów na poziomy oraz zwiększenie trudności na ostatnich poziomach lochów, ale przede wszystkim, umożliwienie każdej postaci, niezależnie od poziomu wytrenowania, na wejście do każdego dungeonu i dojście do pewnego etapu.

Proces podziału został prawie zakończony. Zostały jeszcze 2 dungeony do podzielenia.

Choć system obecnie nie jest doskonały, to chcielibyśmy, abyście mieli z tyłu głowy, iż to tylko sposób, który ma przysłużyć się większemu systemowi, który został zaprojektowany przez kaczego i opisany w jednym z pierwszych DevBlogów, i może zostać dopracowany, gdy ten system wejdzie w życie.

Co nowego przynosi ServUO

W poprzednim DevBlogu pisaliśmy o Oczarowywaniu Węży, a to dlatego, że ta mechanika jest wykorzystywana, by dostać się do nowego bossa – Meduzy.

Meduza to potężny przeciwnik, którego można znaleźć w jej kryjówce w lochu Stygian Abyss. Aby uzyskać dostęp do Kryjówki Meduzy, należy umieścić cztery Rzadkie Jaja Węża na ołtarzu niedaleko wejścia do jej kryjówki. Rzadkie Jaja Węża można zdobyć bezpośrednio z Gniazd Węży lub za pomocą Fletu Zaklinacza Węży.

Aby dostać się do Meduzy, w oryginalnej wersji gry, trzeba przebyć cały loch. Istnieje kilka dróg.

Tamerzy oraz postaci z przywołańcami mogą ją pokonać, ale ich zwierzęta/przywołańce będą często przekształcane w kamień i kopiowane. Zawsze należy jak najszybciej zabić kopię. Owe kopie będą nas atakować.

Dodatkowo, w lochu Meduzy można znaleźć wiele skamieniałych potworów, które w trakcie walki z bossem są “odmrażane”. Potwory będą nas atakować.

Przykład walki z tym bossem z innego serwera:

Podsumowanie

Ostatnio nasza uwaga jest skierowana trochę bardziej w kierunku około serwerowym, niż bezpośrednio w stronę migracji, ale zapewniamy, że jest to tylko przejściowe i już niedługo pasek postępu zacznie znowu się zapełniać 🙂

My wracamy do roboty, a was zapraszamy z powrotem za kolejne dwa tygodnie 🙂

Do następnego!

Read More

Nelderim DevBlog #36

Witaj wędrowcze! Zapewne czytasz to w drodze na zlot Nelderimu…, albo i nie. Tak czy inaczej, weź sobie coś dobrego do jedzonka, jakiś napitek i zapnij pasy, bo jedziemy na wycieczkę po świecie finalizacji i sprzątania systemów okraszonego dziwaczną grafiką. Zapraszamy 🙂

Domknięcie systemu języków

W ostatnim wpisie największą omawianą zmianą był usprawniony system języków, lecz nie byliśmy jeszcze w pełni zadowoleni z jego funkcjonalności.

Największą bolączką było tłumaczenie pojedynczych liter albo sylab, które w efekcie znacząco utrudniało wychwycenie co rozmówca miał na myśli i sensowne efekty można było uzyskać albo znając język w pełni, albo nie znając go wcale.

Zabraliśmy się zatem za przeróbkę i teraz chyba nareszcie jesteśmy zadowoleni z efektów.

System teraz tłumaczy pełne wyrazy, a do tego zbiór słów, które nasza postać będzie rozumieć, będzie się stopniowo rozwijać, wraz ze wzrostem znajomości danego języka.

Uzyskaliśmy w ten sposób dość przyjemny system, który z pewnością wzbogaci świat Nelderim o nowe możliwości fabularne 🙂

Eksperymenty graficzne

Nie pisaliśmy jakiś czas o naszej próbie odświeżenia edytora map CentrED, ale tak naprawdę powolutku wciąż dłubaliśmy i nareszcie pojawiły się sensowne efekty.

Otóż udało nam się razem z pewnym członkiem społeczności ServUO stworzyć bardzo prosty pierwsze prototyp, który ma parę asów w rękawie, a wszystko prezentuje się tak:

Widok ze stacji kosmicznej
Cos z tym obrazkiem chyba jest nie tak?
Wzywajcie egzorcystę, Ultime do reszty powykrzywiało!

Jak widzicie, mamy kawałek programu, który potrafi wyświetlać mapę ultimy, a ponadto komunikuje się z serwerem CentrED, tak więc zostało już tylko zaimplementować wszystkie funkcje edycji mapy, poprawić całą masę bugów i gotowe!

Kolejne porządki

Znacie to uczucie kiedy chcecie zrobić coś prostego, ale z czasem zauważacie coraz więcej rzeczy które również należało by zrobić?

Witajcie w naszym świecie, gdzie proste taski przeobrażają się w przepisywanie całych systemów!

Zadanie było proste: dokończyć wprowadzanie systemu zleceń myśliwego, bo po ostatnich testach, znaleźliśmy, że można pobierać nowe zlecenia bez opóźnienia.

Okazało się, że tak na prawdę wszystko działa jak należy, a “problem” polegał na tym, że na ServUO zlecenia u sprzedawców się zbierają i sprzedawcy mogą dla was nazbierać trzy zlecenia, które możecie odebrać za jednym podejściem(albo za trzema kliknięciami)

Natomiast co zwróciło naszą uwagę, to to, że zlecenia myśliwego wymagają osobnej księgi zleceń.

Ponadto zlecenia myśliwego miały zupełnie inną definicję jakie potwory mogą pojawiać się w zleceniach.

Dodatkowo zlecenia myśliwego nijak nie wpisywały się w nowy system zleceń ze zbieraniem punktów.

No i dlaczego dla zleceń myśliwego jest całkowicie odrębna, lekko zmodyfikowana wersja systemu zleceń, który obsługuje wszystkie inne zlecenia na raz?

DOŚĆ!

Usiedliśmy do kodu i pierwsze co poprawiliśmy to definicje zleceń

Uzupełniliśmy też definicje i teraz do zleceń dołączone są grafiki potworów

Jako, że dla zleceń myśliwego nie ma różnych materiałów ani tego jaką jakość mają zwłoki potworów, to musieliśmy trochę pokombinować, aby wpasować się w nowy system punktów i ilość punktów, które dostaniemy za zlecenie, będzie zależeć od oceny trudności potwora, na której opieramy też kilka innych systemów.

No i jako wisienka na torcie, użyliśmy kawałka taśmy klejącej w oryginalnym systemie i nie będzie już potrzeba osobnego typu księgi zleceń 🙂

Oczywiście teraz przed nami czekają testy, czy aby na pewno wszystko działa, ale jesteśmy na pewno jeden krok bliżej ServUO.

Co nowego przynosi ServUO

“Niejedna dziewka w porcie potrafi oczarować węża, ale nikt nie robi tego tak jak ja.”, rzekła Jadźka zarzucając swą gęstą rudą czuprynę.

No właśnie, ale my tu nie o tych “wężach mówimy”. Kolejna OSIowa nowość daje nam szansę na oczarowanie węży za pomocą gry na flecie, niczym medytujący stary arab w pustynnym mieście.

Aby oczarować węże, należy posiadać specjalny flet do oczarowywania węży (Snake Charmer Flute), który można wykonać za pomocą umiejętności Stolarstwo i Kunszt Muzyczny.

Aby oczarować węże, należy udać się do Leża Meduzy w nowym dungeonie Stygian Abyss. Nieopodal wejścia pojawiają się gniazda węży:

Korzystając z “fletu uwodziciela węży” (to robocza nazwa) w obszarze przed siedzibą Meduzy, można je przekonać do szukania Rzadkich Jajek Węża w Gniazdach Węża. Te jajka są kluczami do wejścia do siedziby Meduzy. Potrzebne są cztery sztuki.

Podsumowanie

I to by było na tyle, jeśli chodzi o poprawki, zmiany, domykanie spraw, ekspetymenty i prezentację na dziś. Dzięki wielkie za uwagę i widzimy się w kolejnym DevBlogu 🙂

Read More

Nelderim DevBlog #35

Kolejny DevBlog, kolejne dwa tygodnie za nami, kolejne zmiany pojawiły się na repozytorium ServUO.

Znowu otwieramy nasz wpis smaczkiem w kierunku fabularnym.

Gracze nie gęsi…

swoje języki mają.

Ci którzy grali na naszym serwerze, prawdopodobnie wiedzą, że mamy system języków i postacie mogą mówić językami, które niekoniecznie są znane przez wszystkich i zwiększa to możliwości fabularne.

System ten działa bez żadnych problemów, ale nigdy nie byliśmy w 100% zadowoleni z funkcjonalności tego systemu i z tyłu głowy cały czas mieliśmy, że kiedyś na pewno będziemy chcieli ten system rozszerzyć.

Jak się zapewne domyślacie, razem z ServUO, pojawi się nowa, rozszerzona wersja systemu języków 🙂

Główną zmianą jest to, że języki będzie się dało trenować, a więc nasza znajomość języków będzie podobna do umiejętności postaci.

Nie jest to oczywiście pełnoprawna umiejętność i nie będzie zapełniać skillcapa, a dodatkowo jeszcze nie mamy ustalone w jaki sposób będziecie mogli uczyć waszych postaci języków, ale na pewno jakieś opcje się pojawią

Skoro będzie się dało znać jakiś język tylko trochę, to chyba oczywiste jest, że też taki język będzie się rozumieć tylko trochę

Działa to również w drugą stronę, czyli jeżeli znamy dany język tylko na 50%, nasz rozmówca zrozumie tylko około 50% tego co będziemy chcieli powiedzieć.

Oczywiście zdajemy sobie sprawę, że w rzeczywistości znajomość języka na 50% w zupełności wystarczy do komunikacji, ale to nie jest rzeczywistość

Do tego są jeszcze dwie dość istotne zmiany:

  1. Będzie możliwość nieznajomości powszechnego
  2. Jest “język” bełkot, którym każdy może mówić, ale nie da się go nauczyć, przez co jest całkowicie niezrozumiały dla każdego 🙂

Przy okazji porządków w tym systemie, dodatkowo posprzątaliśmy od razu kwestię automatycznego nadawania języków przy wyborze rasy.

Pomniejsze zmiany

Oprócz większych zmian, warto również wspomnieć o pomniejszych sukcesach, bo one również przybliżają nas do końca migracji

  • systematyzacja kolejnych dunegonów (Piramida, Hall Torech)
  • poprawiliśmy ilości slotów potrzebnych do kontrolowania przywołańców nekromanckich (przeniesione z RunUO)
  • tłumaczenia (teksty w cnotach, zmiany i poprawki w nazwach części statków)
  • dodano podstawowe czary Rycerstwa do menu sprzedaży u NPC rycerz
  • dodano proszki wzmocnienia ksiąg i dodano je do listy nagród z zamówień skryby
  • zmiany w przeliczniku difficulty mobów (wpływ AutoDispel, wpływ odporności na magię, wpływ umiejętności necro, poprawka w przeliczniku od umiejętności bojowych )

Co nowego przynosi ServUO

Parafrazując znany wszystkim tekst z jeszcze bardziej gry naszych młodych lat: “O KURCZAKI! WALKA!”

Tak, tak, dokładnie to co pomyśleliście… no może nie do końca ta pierwsza myśl. Ta druga. Walki kurczaków, a dokładniej mówiąc hodowla bojowych kurczaków wchodzi wraz z ServUO (oryginalna nazwa Battle Chicken Breeding).

Nowy system wprowadzony wraz z dodatkiem Stygian Abyss. Polega na zaangażowaniu graczy w tworzenie nowego stworzenia poprzez opiekę nad jajkiem w nadziei na uzyskanie przyjaznego zwierzaka.

Pozyskiwanie jaja:

Loot – Podczas zabijania kurzych jaszczurek (chicken lizard), gracze mają losową szansę znalezienia jajka jako łup na zwłokach.

Uwiernianie – Oswojona kurza jaszczurka będzie tworzyć więź z właścicielem tak jak inne zwierzęta (po karmieniu przynajmniej raz, a następnie po 7 dniach rzeczywistego czasu). Po uformowaniu więzi, w dniu połączenia, jeśli gracz ponownie nakarmi kurczaka, istnieje szansa, że złoży on jajko.

A chicken lizard egg.png

Jeśli kurczak nie złoży jajka po pierwszym dokarmieniu, kolejne dokarmianie nie spowoduje składania jaj. Gracz będzie musiał poczekać pewien czas po pierwszym dokarmianiu. Kurczak złoży maksymalnie 2 jajka w tygodniu.

Inkubacja:

Jajko musi być umieszczone i pozostać w inkubatorze przez 3 pełne dni rzeczywistego czasu, aby dojrzeć. W tym okresie gracz musi codziennie podlewać jajko, aby utrzymać jego wilgotność. Po 72 godzinach, jeśli wszystkie kroki zostały wykonane, jajko będzie gotowe do wyklucia. Jeśli jajko pozostaje w inkubatorze przez 48 godzin po dojrzeniu, spłonie.

Zobacz więcej na temat inkubacji i wzrostu jajka.

Incubator.gif

Faza Vorpalna:

Po wykluciu, jeśli wylęgnięte zwierzę to “Bitewna Kurza Jaszczurka”, automatycznie staje się vorpalna i działa praktycznie tak samo jak Króliczek Vorpalny (Vorpal Bunny), tylko nieco wolniej. W przeciwieństwie do króliczka vorpalnego, nie zniknie po kilku minutach. Zniknie z normalną prędkością jak każde inne dzikie lub uwolnione zwierzę.

Aby spowolnić prędkość vorpala nowej Bitewnej Kurzej Jaszczurki, można użyć Obrączki Złuszczania (Scale Collar), które są wykonywane za pomocą umiejętności Majsterkowanie. Po prostu dwukrotnie kliknij obrączkę i celuj w kurczaka. Jeśli jest w zasięgu, istnieje szansa, że obrączka złapie kurczaka. Ponieważ kurczaki nie mogą “założyć” obrączki, efekt migotania na kurczaku wyświetli informację, że jest tymczasowo przywiązany. W tym czasie kurczak zostanie albo unieruchomiony na miejscu, albo całkowicie pozbawiony wytrzymałości, zmuszając go do powolnego chodzenia. Efekt powinien być tymczasowy, aby dać graczom szansę oswojenia go. Ponieważ to stworzenie nie wymaga umiejętności oswojenia, każda próba oswojenia powinna być udana.

Po oswojeniu Bitewnej Kurzej Jaszczurki traci zdolność vorpala, a jej zręczność zostaje zredukowana do standardowego zakresu.

Umieszczanie w stajni w Kurniku:

A chicken coop.png

Kurnik to dodatek do domu służący do przechowywania Kurzych Jaszczurek, Bitewnych Kurzych Jaszczurek oraz zwykłych (piórowych) Kurczaków. Użyj menu kontekstowego zamkniętego i zabezpieczonego kurnika, aby uzyskać dostęp do jego funkcji. Gracz musi mieć odpowiednie uprawnienia wewnątrz domu, w którym znajduje się kurnik, oraz do samego kurnika, aby uzyskać dostęp do tej funkcjonalności. Dopóki kurnik jest pusty, każdy gracz z odpowiednimi uprawnieniami dostępu może przechowywać jedną z trzech rodzajów kurczaków. Po umieszczeniu zwierzęcia w kurniku, kurnik staje się “związany” z tym graczem jako jego właścicielem, i nikt inny nie może tam przechowywać ani odbierać zwierząt. Po odebraniu wszystkich zwierząt, więź z kurnikiem zostaje zresetowana i ponownie staje się dostępna dla każdego gracza.

Jeśli gracz umieścił kurczaki w kurniku, a następnie stracił uprawnienia, nadal będzie mógł odebrać swoje pozostałe zwierzęta z kurnika, ale nie będzie mógł umieścić w nim nowych kurczaków. Gdy odebrał wszystkie swoje kurczaki, nie będzie mógł już uzyskać dostępu do kurnika.

Kurnik jest wykonany za pomocą umiejętności Stolarstwo.

Pozwala graczom przechowywać do 3 kurczaków (zarówno jaszczurki, jak i zwykłe) w swoim domu
Muszą być zamocowane lub zabezpieczone, aby funkcjonować
Nie mogą być umieszczone wewnątrz pojemnika, aby je użyć
Kurnik omija użycie slotów stajennych, ponieważ dane i statystyki stworzeń są przechowywane w kurniku.

Po umieszczeniu lub odebraniu, miejsca na towarzyszy właściciela są odpowiednio aktualizowane
Odebrane zwierzęta będą miały takie same statystyki, jak gdy były umieszczone
Odebrane zwierzęta będą miały takie samo ustawienie jak ich właściciel
Zwierzęta można odebrać tylko z kurnika, w którym zostały umieszczone
Jeśli kurnik zostanie zniszczony, zwierzęta w nim zawarte również zostaną zniszczone.

Podsumowanie

I to by było na tyle 🙂

Jak zawsze, dajcie znać co sądzicie o nadchodzących zmianach.

Do następnego!

Read More

Nelderim DevBlog #34

Po wielu tygodniach lenistwa wakacji powracamy z paczką zmian nadchodzących z ServUO nad którymi obecnie pracujemy.

Długo musieliście czekać na kolejne wydanie DevBloga, ale mamy nadzieję, że to co dzisiaj dla was mamy, chociaż odrobinę wynagrodzi tak długi przestój pomiędzy tym, a poprzednim DevBlogiem.

Zapraszamy do lektury!

Andrzeju, jak ci na imię?

Znacie to uczucie, gdy jesteście na spacerze i znacie imię każdej osoby którą mijacie? My też nie.

Postanowiliśmy zatem zaimplementować na naszym ServUO system imion, który obecny jest również na innych shardach RPG.

W skrócie polega to na tym, że każda napotkana przez was postać będzie wyświetlana jako “nieznajomy/nieznajoma”, dopóki się wam nie przedstawi, lub sami nie nadacie tej postaci jakiegoś imienia.

Aktualnie system ten posiada zaimplementowane podstawowe funkcje i z pierwszych testów wszystko działa jak należy, natomiast zobaczymy dokładnie w jakim kierunku to pójdzie jak usiądziemy wspólnie do testów i zobaczymy jak to się sprawdza w praktyce.

Jest to zmiana raczej estetyczna i z pewnością wzbogaci niektóre aspekty odgrywania postaci, ale wierzymy tez, że wprowadzi to sporo urozmaicenia w aspekcie PVP, gdy na przykład wyświetli się wam komunikat “zabił cię nieznajomy krasnolud”, zamiast “zabił cię Andrzej”.

Oczywiście nam samym nazywaniu i przedstawianiu się, system ten się nie skończy i mamy już kilka pomysłów jak go trochę urozmaicić i uzbroić, na przykład poprzez szaty z kapturem 🙂

Nazywać można innych na różne sposoby…

Złap je wszystkie!

Nieee, nie chodzi o pokemony, czy inne pokraki!

Chodzi nam o system osiągnięć, który mieliśmy z tyłu głowy od bardzo dawna i nareszcie udało nam się przygotować bazę tego systemu godną Nelderim.

Chcemy też nadmienić, że system ten powstaje na bazie gotowego systemu udostępnionego w Internecie, jednakże został on całkowicie przepisany, żeby dorównywał przejrzystością kodu pozostałym naszym systemom 🙂

Założenie jest bardzo proste i dobrze wszystkim znane.

Zabijacie danego Bossa po raz pierwszy, osiągniecie. Zabijacie danego Bossa po raz 100, osiągnięcie. Pierwszy raz odwiedzacie miasto elfów, kolejne osiągnięcie. Dołączacie do gildii, znowu osiągnięcie.

Moglibyśmy tak wymieniać bardzo długo, ponieważ mamy już wstępną listę konkretnych osiągnięć oraz drugą listę poglądową jakie kategorie osiągnięć chcielibyśmy mieć na naszym serwerze.

Na pewno każdy znajdzie coś dla siebie, ponieważ osiągnięcia planujemy przygotować w wielu kategoriach takich jak zabijanie potworów, PVP, crafting, zbieractwo, eksploracja, a także przeróżne inne osiągnięcia o tak wdzięcznych nazwach jak: Alkoholik, Koniobijca, Rasista, czy Poliglota.

Ale to jeszcze nie wszystko, ponieważ zbierając osiągnięcia, będziecie mogli równocześnie zbierać punkty, a jak wszyscy dobrze wiedzą, takie punkty później można wymienić na jakieś śmieci wspaniałe nagrody!

Kolejne testy

11.06.2023 miała miejsce kolejna sesja testów na ServUO, podczas której prawie udało nam się całkowicie wyczyścić tablicę z zadaniami do ostatecznego przetestowania.

Sprawdziliśmy wspólnie, czy w systemie imion wszystko działa jak należy i oczywiście znaleźliśmy kilka błędów, które musimy jeszcze naprawić.

Na ServUO staramy się w miarę na bieżąco nadganiać zmiany które robimy na obecnym silniku i każdą taką zmianę dodatkowo testujemy po przeniesieniu czy wszystko działa jak należy.

W przeniesionych zmianach były poprawki w przywołańcach nekromanckich, testy systemu trofeów, tłumaczenia gumpów craftingu, przeniesienie emotek podczas craftowania, quest na mrówki, możliwość craftowania customowych statuetek przez kamieniarza, craftowanie zwierzęcych masek ze skóry, problem z crimem za grabienie zwłok wierzchowca oraz wiele innych.

Oprócz przenoszonych zmian testowaliśmy też różne inne modyfikacje systemów oraz funkcje które nie działały tak jak byśmy tego chcieli.

Jako przykłady takich tematów możemy wymienić ostateczne zamknięcie tematu AutoStable, możliwość zakupu magicznych zwojów tam gdzie powinno dać się je kupić, dziwne AI w Druidyzmie, znikająca ruda podczas kopania z pełnym plecakiem, orki bez imion, poprawka w zapisywaniu wytrzymałości ksiąg magicznych, problemy z AI zwierząt ze statuetek, nieagresywne rzezimieszki, stackowanie sie buffów z potionów, wywarów i serów, lodowy podmuch u lodowego smoka oraz poprawiona zbroja konia bojowego.

Lista jest oczywiście dłuższa, ale to znaczna większość zmian poczynionych w ostatnich miesiącach, jeżeli chodzi o kod. Poniżej możecie zobaczyć część poprawek i kolejnych bugów, które wyszły podczas testów, np.: brak delay na branie zleceń, nadal niepoprawnie wyświetlający się gump inskrypcji, czy też brak możliwości pokolorowania konia bojowego w zbroi.

Co nowego przynosi ServUO

Do GMa na dywanik! Albo do kogokolwiek, bo teraz, dzięki ServUO będziecie mogli ogarnąć własny dywan poza systemem zleceń myśliwskich.

Wraz z dodatkiem Stygian Abyss, gracze będą mieli możliwość ukończenia krótkiego łańcucha zadań o nazwie Shearing Knowledge, który umożliwi im dostęp do specjalnego asortymentu dywanów u wybranych sprzedawców. Każdy kawałek dywanu można umieścić wewnątrz domu i zablokować w sposób intuicyjny i prosty, nie będąc wliczonym w ogólną ilość blokad. Aby zablokować dywan, wystarczy dwukrotnie kliknąć na niego. Aby odblokować, powtórz ten sam krok.

Te dywaniki korzystają z istniejących wcześniej grafik, które nie były dostępne dla graczy. Pomysł ten został pierwotnie wprowadzony w systemie stworzonym przez Michaela “Vexa” Moore’a w 2001 roku, inspirowanym z kolei pomysłem “Dermotta” na sprzedawane przez sprzedawców płytki podłogowe, jednak nigdy nie został użyty z powodu potencjalnych nadużyć i komplikacji. Celem tego systemu jest obejście problemów, jakie mogłyby powstać w wyniku wcześniejszej implementacji, oraz wprowadzenie dywanów w Stygian Abyss poprzez wymaganie ukończenia określonego łańcucha zadań.

A co dostajemy w tej paczce?

– Sześćdziesiąt jeden różnych kawałków dywanu
– Nowy łańcuch zadań, który umożliwia zakup kawałków dywanów od specjalnego sprzedawcy
– questy Shearing Knowledge, następnie Weaving Friendships, a potem A New Spin on Things

Podsumowanie

Dotarliśmy do końca!

Dużo było u nas ostatnio wyjazdów, wakacji i nicnierobienia, ale już wracamy i bierzemy się do roboty.

Jak zawsze, dajcie nam znać co sądzicie o systemie imion, czy już macie wymyślone jakieś imiona dla postaci innych graczy oraz czy chcielibyście, żebyśmy dodali jakieś nietypowe osiągnięcia na serwerze?

No i chyba nie musimy już mówić, że DevBlog wraca do starego rozkładu jazdy i widzimy się znowu za dwa tygodnie 🙂

Read More

Nelderim DevBlog #33

Witajcie w majowym wydaniu DevBloga!

Tym razem nareszcie bez obsuwy, pomimo majówkowego długiego weekendu no i jak to już na nas przystało, udało się trochę ruszyć robotę.

CentrED# – domknięcie

CentrED# jest z nami już od jakiegoś czasu i ostatnio powiedzieliśmy, że do zamknięcia tematu zostało nam już tylko potwierdzić, że wszystko działa jak należy, poprzez testy z większą ilością użytkowników.

Zebraliśmy się w gronie ekipowym z dodatkiem kilku obecnych w tamtym czasie patronów i okazało się, że jednak nie wszystko działa tak jak powinno.

Problemy zaczęły się jeszcze przed właściwymi testami, gdy wszyscy zaczęli wstępnie sprawdzać czy wszystko u nich działa.

Czasami nie można się było w ogóle połączyć, czasami nie można się było rozłączyć, serwer potrafił się totalnie zawiesić, pliki mapy ulegały uszkodzeniu, serwer kilkukrotnie po prostu umierał, a to wszystko pomimo wprowadzania poprawek na bieżąco po każdym namierzeniu problemu.

Po oficjalnym wystartowaniu testów, minęło zaledwie pół godziny i zakończyliśmy sesję testową, ponieważ ciągłe umieranie serwera i uszkadzanie się plików mapy, dało nam do zrozumienia, że obecnej sytuacji nie naprawimy szybkimi poprawkami i trzeba szerzej spojrzeć na problem i poczynić poważne kroki.

Największym problemem okazała się niepotrzebna wielowątkowość serwera i najzwyczajniej trzeba było przepisać wszystko na wariant jednowątkowy, na wzór serwerów RunUO czy ServUO.

Gdy to było gotowe, a do tego wszystkie problemy zrodzone przy przepisywaniu zostały załatane, nadszedł czas na dogrywkę z patronami.

Totalna dewastacja mapy

Zaczęło się podobnie jak poprzednio, czyli na początku totalnie nic nie działało, jednakże tym razem po około 30 minutach i około 7 poprawkach, zgodnie uznaliśmy, że serwer działa stabilnie i jedyne problemy jakie odnotowaliśmy to jedna drobnostka oraz problemy z tzw. LargeScaleOperations, które są bardzo rzadko używane i nie wymagają natychmiastowej poprawki.

Niektórzy próbowali tworzyć bardziej artystycznie

W wolnej chwili naprawiliśmy pozostałe problemy, przy okazji udało nam się znaleźć i naprawić jeszcze kilka pomniejszych baboli, podgraliśmy CentrED# na serwer i oficjalnie możemy ogłosić, że ten epizod w DevBlogu dobiegł końca, a my możemy cieszyć się naszym udoskonalonym narzędziem, a także możemy w końcu wrócić do innych zajęć.

Kolejne zmiany

Podziały dungeonów pod system gradacji trudności mobów, który został opisany w DevBlog#3 wciąż dzieją się w tle. Jest to dość mozolny proces i żmudne zajęcie, więc dość niechętnie siadamy do tego, ale powoli dokonujemy zmian w we wszystkich dungeonach. Zmiany te jednocześnie są też wprowadzane na RunUO, a na ServUO zostaną jedynie uzupełnione o gradację siły mobków.

Dalsze prace na “Wyspie Noobów”

Po testach CentrEDa, które odbyły się na rzeczonej wyspie, oraz po tym jak lekko przyozdobiliśmy ową lokalizację, nadszedł czas na dodanie tam kilku innych ważnych elementów.

Jako, że liczymy, iż nowi gracze będą od pierwszej chwili chcieli wiedzieć dokąd iść, zdecydowaliśmy się postawić znaki, które po najechaniu na nie, będą mówić dokąd prowadzi dana droga. (Może i na RunUO by to zrobić też hmm…?)

Taką formę przyjęliśmy na tę chwilę. Mogą one ulegać zmianom

Na wyspie postawiliśmy również podstawowych NPCów w budynkach odpowiadających wystrojem do danego typu NPCa. W przyszłości pojawią się tam też opisy skilli, użycia, itp.

W mieście pojawiła się też straż, aby przyzwyczaić graczy do tego, że, odmiennie od OSI, straż jest obecna cały czas i może nas skosić, gdy popełnimy akcję nadającą nam status kryminalisty.

W Starym Haven i w rogu mapy dodaliśmy tez trochę potworów. Staraliśmy ograniczyć się kilku spawnerów, by zmniejszyć obciążenie maszyny, na której hostujemy serwer.

Nadrabianie zmian

Staramy się też nadgdaniać zmiany z RunUO. Niestety, nie zawsze działa to na zasadzie “kopiuj, wklej”, stąd jest jeszcze kilka rzeczy, które musimy nadgonić.

Zmiany, które ostatnio nadgoniliśmy to:

  • dodanie piedestału do menu wyrobów kamieniarstwa
  • brak crima po zlootowaniu wierzchowca mobków, które ujeżdzają je
  • zmiany w nakładaniu się buffów w serach, wywarach, rybkach i klopsikach
  • komendy dla Consa
  • stackowalność w tiledata.mul dla m.i. dusz, nasion
  • automatyczne odnowienie kupca, którego nie trzeba ręcznie włączać po jego postawieniu
  • zmiany w maskach, które można tworzyć za pomocą krawiectwa
  • pomniejsze poprawki na składniki krasnoludzkiego rumu
  • umożliwienie recyklingu kościanych zbroi
  • podmiana niektórych ItemID w customowych posagach, gdyż po przejściu na ServUO pewne cyferki mogą się różnić, gdyż są one tam używane już przez oryginalne itemy z OSI

Dodatkowo, kilka zrobiliśmy kilka rzeczy, które wyszły w trakcie testów, mianowicie:

  • wyłączyliśmy tymczasowo system cnoty Honesty oraz zmieniliśmy lokalizacje spawnowanych itemów do tego systemu – włączymy go pewnie już po starcie, po przetestowaniu go
  • wyłączyliśmy napis “Guarding”, który pojawiał się na kontrolowanych istotach, gdy powiedzieliśmy do nich “chroncie mnie”

Co nowego przynosi ServUO

Dodatek Stygian Abyss w 2009 roku przyniósł sporo nowości. Nie obyło się również bez dostarczenia nowych specjali. Wraz z wejściem umiejętności Rzucanie (Throwing), otrzymujemy 2 nowe specjale:

Infused Throw
Koszt many: 25 Pocisk zostanie nasączony energią przez atakującego, co spowoduje większe obrażenia i ogłuszenie lub zrzucenie celu z siodła.
Można go znaleźć na broni zwanej Cyklon.

Mystic Arc
Koszt many: 20 Rzucony pocisk przeskoczy do drugiego celu po trafieniu w pierwszy cel. Chaosowe obrażenia (Chaos Damage) zadawane są przy trafieniu w każdy cel. Ruch ten trafi tylko w cele, które są w walce z graczem.
Mozna go znaleźć na Bumerangu.

Podsumowanie

I tutaj zakończymy dzisiejszy wpis.

Jeden temat mamy nareszcie z głowy, sporo tematów ustawiło się w kolejce jako gotowe na ostateczne przetestowanie, cała góra tematów wciąż przed nami, jak to mówią, powoli do przodu 🙂

Widzimy się ponownie za 2 tygodnie!

Read More

Nelderim DevBlog #32

Mamy nadzieję, że lubicie geografię, architekturę, kartografię, budownictwo i tematy zagospodarowania przestrzeni, bo dzisiejszy DevBlog będzie dokładnie o tym, czyli o naszej mapie.

CentrED# ciąg dalszy

CentrED jest narzędziem do edycji mapy, a o tym, że tworzymy odświeżoną wersję tego narzędzia, wspominaliśmy już dwukrotnie na DevBlogu.

W związku z ostatnim wzmożeniem aktywności w temacie zmian mapy na ServUO naturalnie przyszło, że chcemy ułatwić sobie życie i wprowadzić kilka usprawnień w CentrEDzie.

Pierwszym usprawnieniem było wprowadzenie automatycznych kopii zapasowych mapy nauczeni doświadczeniem po tym, jak jeden z naszych budowniczych postanowił zrobić copy-paste zaznaczenia o wielkości 3765×1944, czyli łącznie 7319160 kratek i wkleić to 11 kratek w levo i 25 kratek do dołu 🙂

Cos zdecydowanie poszło nie tak…

Następnie, w całym projekcie zostały wykonane totalne wiosenne porządki i pousuwaliśmy nieużywane fragmenty kodu, dużo elementów otrzymało poprawione nazwy, poprawiliśmy znacząco obsługę błędów, uporaliśmy się z kodem sieciowym i nareszcie wszystko działa jak należy, poprawiliśmy wszystkie uwagi, które zgłosił nam kompilator, wprowadziliśmy garść optymalizacji, żeby wszystko hulało jak dzik po truflach i na sam koniec dorzuciliśmy szczyptę bugfixów, na błędy którym udawało się do tego czasu ukrywać.

Jest jeszcze wisienka na torcie w postaci obsługi mapy w używanym przez nowsze klienty formacie .uop, jednakże dla nas to nie ma znaczenia, bo nawet po przesiadce na ServUO, będziemy trzymać się formatu .mul ze względu na jego prostotę 🙂

Nasz nowy CentrED# jest już praktycznie gotowy i ostatnie testy w skromnym gronie nie pokazały żadnych nieprawidłowości i jedyne co nam pozostało to wykonać testy z większą ilością użytkowników, aby mieć 100% pewności, że wszystko działa jak należy i wtedy z czystym sumieniem będziemy mogli zastąpić całkowicie leciwego CentrEDa naszą odświeżoną wersją.

Wyspa Początku

Czy zdarzyło wam się grać w grę, która nie ma tutoriala, a od samego wejścia krzyczy do Ciebie “łap miecz, kamracie! Idziemy tłuc smoki! Jakie klikanie w bandaże, mordo? Robisz skrypcik w Pythonie, cyk pyk i makro gra za Ciebie..”, a próg wejścia jest wyższy, niż inflacja w Polsce? Tak, zgadliście, to Ultima Online na serwerze Nelderim. Nadszedł więc czas, by to zmienić.

Po tym jak tylko udało się kaczemu uporać z wszelkimi bugami i problemami z CentrEDem i doprowadzić go do stanu, w którym mogliśmy robić jakiekolwiek zmiany w mapie bez crashów co 5 min, udało nam się wznowić prace nad czymś co roboczo nazwaliśmy “Wyspą Noobów” lub tez “Wyspą Początku”. Jest to obszar, który będzie służył nauce podstaw gry w UO.

Na tej wyspie będzie można nauczyć się podstawowej obsługi gry, poruszania się, zastosowania umiejętności, schematu grania, troszkę RPG, bicia łatwych mobów, zbierania podstawowych surowców i dopiero po tym krótkim tutorialu będzie można przejść do faktycznego świata Nelderim (Chyba, że sami zdecydujecie aby go pominąć).

Długo zastanawialiśmy się gdzie taką wyspę postawić, jak ją odizolować od Nelderim. Samą lokację zmieniliśmy już kilka razy, ale finalnie wróciliśmy do korzeni. Rozpoczynać będziemy w New Haven – lokacji początkowej z map OSI. Oczywiście, musimy tę lokację trochę przystosować. Jak Levy kiedyś rzekł: “te lokacje są jakieś takie łyse i biedne”, i miał chłopak rację, jako, że tak właśnie wyglądają, w szczególności, gdy porównamy je z autorskimi dungeonami (np.: Elghin, zbudowany przez Levego, czy lokacja Harrowera, zbudowana przez Halranda).

Tak, więc, wraz z kaczym, podczas testów CentrEDa, zaczęliśmy zmieniać tę lokację.

Dla wielbicieli “zimnego łokcia” (pun intended), również postaraliśmy się o atrakcje. Ten łysy cmentarz zyskał trochę charakteru, gdy dodaliśmy tam trochę dekoracji. Można by rzec, że trochę… ożył.

Pozbywamy się też wszelkich azjatyckich naleciałości na mapie, na tyle, na ile to możliwe, więc cały budynek został zrównani z ziemią, a na jego miejscu Elfy posadziły las. 🙂

Na oryginalnej mapie kilka budynków zostało postawionych bez dachów (nie wiedzieć czemu), więc postaraliśmy się o uzupełnienie tego elementu.

Poza zmianami pokazanymi na powyższych screenach, pojawiły się również pomniejsze dekoracje na tej wyspie, oraz kilka mniej znaczących przeróbek w mapie na ziemi Nelderim.

Oczywiście to tylko początek prac, bo chcemy żeby jakość wyspy dorównywała, a nawet przebijała jakość lokacji z głównej mapy, a gdy wyspa będzie gotowa pod kątem terenu, budowli i dekoracji będziemy musieli poświęcić jeszcze sporo pracy, aby przystosować całą wyspę tak, by nowi gracze nie czuli się zagubieni i zostali z nami na dłużej 🙂

Co nowego przynosi ServUO

Co ty pleciesz, czyli wyplatanie koszy

Nie tylko zabijaniem zajmują się gracze w Ultimie, bo na każdego czeka również bardzo wiele pomniejszych systemów opierających się na zbieractwie, wytwarzaniu i dekorowaniu waszych wirtualnych kawalerek i fortec gildyjnych.

Jednym z takich dodatków jest właśnie specjalne rozszerzenie dla majstrów, które można wykupić podobnie jak dmuchanie szkła czy kamieniarstwo, a jest to wyplatanie koszy 😀

Kosze wykonuje majster ze zmiękczonej trzciny i drzewców(zwanych również promieniami). Drzewce wykonuje łukmistrz z desek, bądź kłód, a zmiękczoną trzcinę wytwarza alchemik z trzciny i palącej toksyny.

Palącą toksynę przygotowuje alchemik z toksyny z potworów, natomiast trzcinę pozyskuje się przycinając wyhodowane dekoracyjne rośliny.

Kolor wytworzonego koszyka jest zależny od koloru trzciny, a kolor trzciny jest zależny od koloru rośliny z której została pozyskana.

Kosze również różnią się też wyglądem i znajdziecie kosze małe, duże, wysokie, niskie, okrągłe, prostokątne, łącznie 11 rodzajów, które prezentują się tak:

Potrzeba zatem wielu umiejętności i cierpliwości, aby pozyskać pożądany przez siebie kosz, ale na pewno znajdą się amatorzy wyplatania 🙂

Podsumowanie

Dotarliśmy do końca tej części DevBloga i jak widzicie, nieustannie działamy, a pasek postępu migracji na ServUO w ślimaczym tempie się zapełnia, pomimo niedoboru czasu i kuszącej do opuszczania komputera wiosennej pogody.

Do następnego!

Read More

Nelderim DevBlog #31

Mimo, iż idą święta Wielkiej Nocy, a jutro idziecie świecić jajka, to nasz DevBlog, to nie żadne jaja. Dzisiejsze wydanie jest obszerne i bogate w naprawdę solidne oraz ciekawe informacje. Zaparzcie herbatkę i zbierajcie się za czytanie 😉

Testy i kolejne zmiany

26.03.2023 zostanie zapamiętany, jako dzień, w którym dokonaliśmy testów i (prawie) wszystkie zmiany dostały zielony światło. Z kolejki DO SPRAWDZENIA, zostały przeniesione na ZROBIONE (pozostałe zostały przesunięte na SZYBKIE). A co przetestowaliśmy? Lista okraszona wizualną reprezentacją w postaci zrzutów ekranu poniżej 🙂

Obozowanie – prawdopodobnie jeden z bardziej niedocenionych skilli. Na naszym RunUO im więcej obozowania posiadamy, tym więcej skór możemy wyciąć z ciała. Tu zdawało się wszystko działać poprawnie. Po teście na smoku, okazało się zaś, iż zestaw do robienia trofeów nie reaguje. To zadanie zostało cofnięte do naprawienia.

Jak już jesteśmy w temacie craftingu, to udało nam się również sprawdzić zmianę poczynioną niedawno, która powodowała reset typu rudy, który będzie wykopywany w danym miejscu. Restart następuje co 5 minut i wydaje się działać poprawnie. W miejscu pokazanym poniżej wykopałem żelazo i brąz, po chwili zaś shadow i żelazo. Tutaj mamy zielone światło.

Dodatkowo, sprawdzaliśmy też jak OSIowe oryginalne drewna mają się do naszych customowych. Wciąż bijemy się z myślami czy złączyć systemy, czy przenieść ten z RunUO. Jednakże, dziś nie o tym. Prezentujemy test jednego ze zgłoszonych bugów, który ponoć nie nadawał szczęścia na łukach, gdy był podbijany odpowiednim materiałem. Sprawdziliśmy to zarówno na takich z 0 szczęścia i na takich ze 100 szczęścia. Wszystko wydaje się działać poprawnie.

Jeszcze w 2021 powstała propozycja, by księgi czarów traciły wytrzymałość, gdy czarujemy. Udało nam się zrealizować sugestię i będzie ona na ServUO. Szansa wynosi na chwilę obecną około 1% (szansę pewnie będzie trzeba jeszcze wyregulować w dalszych testach).

Okazało się, że w kodzie ServUO znajduję się drobny bug, który po restarcie serwera zamieniał maksymalną wytrzymałość przedmiotu z obecną. Na szczęście nasi najlepsi ludzie szybko znaleźli przyczynę i ponownie zapisali się na kartach historii rozwoju całego ServUO.

26.03.2023 Halrandowane

A jak już o Jarlu Halrandzie Wulfroście mowa, no to właśnie mamy dla was coś, o czym wspominaliśmy na kanale Discord jakiś czas temu. Żart, został przekuty w rzeczywistość. Powstanie nowy boss. Nadaliśmy mu wiele ciekawych mechanik, jako, że chcemy, by przypominał coś na zasadzie raidów w WoWie, nie będzie możliwości zabicia go samodzielnie.

Mechaniki jakie posiada to, m.in.: odwracanie działania Vampiric Embrace, przyciąga do siebie, używa rycerstwa oraz tradycji wojennej, odkrywa ukryte postaci, posiada 2 formy, niczym Harrower, chroniony jest przez strażników, a do tego jeszcze kilka innych ciekawostek. Boss powinien być dość potężny, a mieścić się będzie dungeonie, który powstanie w obecnym zamku Stygger Fra Norslund.

OGNIEŃ!!!! No i właśnie, tutaj pojawia się problem, bo przez ten ogień można było przejść i nic w zasadzie nam się nie działo. Okazuje się, że na ServUO teren lawy miał inną “flagę”, która umożliwiała chodzenie po niej, bez żadnych konsekwencji. Po aktualizacji tej flagi i plików mapy wszystko powinno być już OK.

Dodatkowo, przetestowaliśmy atak specjalny Dragon Breath (wcześniej znany jako Fire Breath), który potrafił sprawić sporo problemów. Jak pewnie zauważyliście, im więcej punktów życia ma cel, który posiada ten atak specjalny, tym więcej obrażeń zadaje. To już przeszłość. Udało nam się nałożyć limit, który nie przekroczy 100 obrażeń.

Przenieśliśmy też system tworzenia przywołańców nekromanckich i przetestowaliśmy go jeszcze raz. Wydaje się, że wszystko działa jak powinno.

Napotkaliśmy też problem, w którym wszystkie imienne stworzenia, np. orki, nie brały imion z pliku names.xml. Myśleliśmy, że udało nam się to naprawić do czasu testów, ale wygląda na to, że nie.
EDIT: kaczy naprawił to dziś 😉

Pewną nowość mamy też dla was w zanadrzu. Mianowicie, system pocztowy. Jest on prawie gotowy, lecz wymaga kilku przeróbek, aby zapobiegać nadmiernemu wykorzystywaniu systemu.
W obecnej formie działa on tak: musimy zakupić księgę adresową. Aby otworzyć księgę, należy wrzucić do niej wosk (przetwożony lub nie; można je pozyskać z systemu pszczelarstwa) oraz czyste zwoje. Spotkaną postać możemy dodać do księgi adresowej. Wtedy możemy do niej wysłać przesyłkę, którą wrzucamy do skrzynki pocztowej, takiej jak na obrazku, a ona pojawi się u tej postaci w plecaku.

Chcemy wprowadzić kilka zmian do systemu. Gdy to zrobimy, poinformujemy was w DevBlogu.

Przenieśliśmy też zlecenia myśliwskie, jednakże gdy chcieliśmy takie zlecenie pobrać, powodowało to crash clienta. Zmiana została przeniesiona do kolejki SZYBKIE.

Na koniec testów, żeby było śmiesznie, chcieliśmy sprawdzić regiony i spawnery. Po zresetowaniu spawnera, serwer się zawiesił. Stąd, dalsze testy też zostały zawieszone 😉

Ponadto, zrobiliśmy jeszcze testy kilku pomniejszych rzeczy, takich jak: czy punkty fabularne przypisane do konta dobrze się sumują, czy można teleportować się GMem do postaci, czcionki, dźwięki i teksty animacji.

Po zakończonej sesji testowej, uzupełniliśmy tablicę “do zrobienia” wykrytymi niedociągnięciami i mogliśmy wrócić do etapu “przenoszenia zadań na zrobione” 🙂

Kolejna porcja poprawek

Jako, że sesja testowa miała miejsca zaraz po opublikowaniu poprzedniego DevBloga, mieliśmy jeszcze dużo czasu, aby przygotować materiał do następnej sesji testowej, więc zakasaliśmy rękawy i wzięliśmy się do roboty.

Udało nam się wprowadzić poprawki w wielu pomniejszych kwestiach takich jak animacje, dźwięki i *emocje* podczas wytwarzania przedmiotów i pozyskiwania surowców, kolejne tłumaczenia, brakujące imiona u orków oraz innych ras potworów, czy finalne zamknięcie tematów tytułów zależnych od sławy oraz funkcji AutoStable.

Z kwestii trochę ważniejszych, naprawiliśmy błąd uniemożliwiający pobieranie zleceń myśliwego, domknęliśmy temat nowych proszków wzmocnienia dla konkretnych rzemieślników, dodaliśmy możliwość nauczania umiejętności rzucanie przez kilku NPC, zrobiliśmy porządek w księgach czarów i magicznych zwojach u wielu kupców i poprawiliśmy zbieranie surowców, gdy mamy pełny plecak.

Dodatkowo uporządkowaliśmy menu skryby, na wzór tego co niedawno zrobiliśmy na RunUO, naprawiliśmy kilka niestackowalnych przedmiotów, dodaliśmy możliwość skoczenia GM do gracza po imieniu z użyciem komendy [go, naprawiliśmy “agresywność” rzezimieszków, a także mocno przyśpieszyliśmy reakcje oraz prędkość potworów oraz strażników, a sami strażnicy otrzymali magiczną sztuczkę w postaci teleportu do spawnera, gdy oddalą się zbyt daleko od posterunku.

I jako wisienka na torcie, okno historii punktów fabularnych będzie na ServUO wyświetlać imię postaci, której zostały przydzielony punkty fabularne, a gracze bardziej aktywni fabularnie będą mogli swoją historię punktów fabularnych przewijać 🙂

Jak widzicie, różnorodność tematów którymi się zajmujemy jest spora, a każda poprawka przybliża nas do końca migracji…

Pomiar postępu

Każdy z was zapewne zauważył na naszej stronie pasek postępu migracji na ServUO i zapewne część was zadała sobie pytanie: na jakiej podstawie ustalamy wartość tego paska postępu?

Otóż odpowiedź jest bardzo prosta, ustawiamy to na czuja, czyli jak zamkniemy dużo zadań to dodajemy jeden, dwa procent, albo i nie dodamy nic.

I teraz znajdą się pewnie też tacy, którzy powiedzą, że nie ma to totalnie sensu i trzeba coś z tym zrobić, żeby jakkolwiek określić ile jeszcze pracy nam zostało do końca migracji.

Doszliśmy do tego samego wniosku i zastosowaliśmy bardzo popularne podejście w programowaniu, gdzie każde zadanie, które mamy na liście do zrobienia, na czuja wyceniliśmy, ile mniej więcej czasu nam może zająć.

Żeby mieć jakiś punkt odniesienia, wyceniliśmy też trochę mniej na oko wszystkie zamknięte zadania, bo pamiętaliśmy mniej więcej ile nam każde z nich zajęło, dorzuciliśmy trochę prostej matematyki i możemy się wszyscy cieszyć, bo postęp migracji na ServUO to nie 26% a 30%!

Zwróćcie również uwagę, że gotowych, ale jeszcze nie zatwierdzonych jest zadań, za aż 71 punktów, tak więc jak tylko zbierzemy się, żeby potwierdzić, że wszystko się zgadza, to pasek postępu urośnie jeszcze bardziej!

Co nowego przynosi ServUO

O systemie skill masteries zwanego roboczo przez nas masterkami a następnie talentami słyszeliście już w DevBlogu#4 oraz DevBlogu#8 gdzie opisaliśmy z czym to się je oraz jak działają talenty barda oraz dla umiejętności bojowych. Dziś skupimy się na umiejętnościach magicznych takich jak: nekromancja, druidyzm, mistycyzm oraz magia.

Nekromancja

Command Undead – Nekromanta może wydawać nieumarłym rozkazy w oparciu o umiejętności nekromancji oraz rozmowy z duchami, poziom talentu, jak i trudność nieumarłego (Barding difficulty), jednocześnie wysysając życie z celu. Wymaga 2 miejsc na stworzenia.
Conduit – Nekromanta tworzy pole, w którym wszystkie jego zaklęcia działają na jednostki w tym obszarze lecz ze zmniejszoną siłą. Moc zaklęci bazuje na nekromancji, rozmowie z duchami i poziomie talentu.

Druidyzm

Mana Shield – Tworzy tarczę, która może zaabsorbować do 50% otrzymanych obrażeń kosztem many. Talent bazuje na poziomie druidyzmu, mocy kamienia oraz poziomu talentu.
Summon Reaper – Druid przywołuje żniwiarza, na czas zależny od druidyzmu oraz medytacji. Siła przywołańca zależy od druidyzmu, mocy kamienia oraz poziomu talentu.

Magia

Death Ray – Mag skupia promień śmierci na swoim przeciwniku, który zadaje obrażenia w oparciu o umiejętności magiczne, analize inteligencji i poziom talentu, o ile mag ma manę, a cel znajduje się w zasięgu. Promień zadaje celowi obrażenia od energii a SDI nie jest brane pod uwagę, natomiast pogromca już tak (slayer).
Etheral blast – Przywraca czarodziejowi mane, a jej ilość zależy od magii, analizy inteligencji oraz poziomu talentu.

Mistycyzm

Nether Blast – Mistyk rzuca obszarową falę energii, która zadaje obrażenia od losowej odporności. zależne od poziomu mistycyzmu, skupienia (focus) lub imbuingu oraz poziomu talentu. Dodatkowo czar może powodować kradzież many od celu na rzecz mistyka.
Mystic Weapon – Czarujący przekształca umiejętność mistycyzmu w wymaganą umiejętność używanej broni dzięki czemu może nią władać, lecz traci przez to samą umiejętność. Im lepszy poziom talentu, tym mniej umiejętności utraci mistyk. Gdy posiada talent na poziomie 1 – traci 15% umiejętności, 2 – 10% umiejętności oraz 3 – 5% umiejętności. Zatem posiadając 120% mistycyzmu oraz trzeci poziom talentu może używać aktualnie trzymanej broni na poziomie 115% umiejętności bojowej.

Podsumowanie

Kwantyfikacja postępu oraz porządne testowanie, którego przyznamy czasem nam zabrakło, są istotne dla nas na ServUO, stąd też tak duża część prac zostala im tym razem poświęcona.

To tyle na dziś. Dzięki za uwagę i do następnego. Wesołego Jajka!

Read More

Nelderim DevBlog #30

Witajcie w dzisiejszym, niestety opóźnionym DevBlogu.
Trochę nam szkoda, że nie udało się utrzymać stałego cyklu dwutygodniowego przez cały czas gdy prowadzimy DevBloga, ale zrobimy co w naszej mocy, żeby więcej się to nie powtórzyło 😉

Zapraszamy do lektury

Dużo małych zmian

Ze względu na dość mocno ograniczony wolny czas w ostatnich tygodniach musieliśmy zmienić trochę system pracy i skupiliśmy się głównie na mniejszych zadaniach, które mogliśmy szybko zrobić w wolnych chwilach.

Poskutkowało to tym, że udało nam się zamknąć dużo małych tematów, które pojedynczo nie robią wrażenia, ale sam fakt tego, że lista małych zadań do zrobienia jest teraz tak krótka, że zniknął suwak do przewijania, bardzo nas cieszy.

Z drugiej strony też wszystkie te zrobione zadania trafiły na listę rzeczy do ostatecznego potwierdzenia i czeka nas niedługo dość potężna sesja testowa 🙂

Lista zrobionych rzeczy prezentuje się tak:

  • Zwłoki będą znikać, jeżeli potwora zabije strażnik
  • Paragony spawnują się tak jak powinny
  • Naprawiliśmy zlecenia myśliwego
  • Pogromca nieumarłych będzie działać na Kościeja
  • Punkty fabularne będą przypisane do konta
  • Ograniczenie spamu używania pasterstwa
  • Konfigurowalny czas do restartu/shutdownu
  • Możliwość anulowania trwającego restartu serwera
  • Przedmioty będzie można ubezpieczać tylko u bankiera
  • Przenieśliśmy odgłosy i animacje dla rzemiosł
  • Poprawiliśmy flagi na co można wchodzić, a na co nie można 🤷
  • Wiele poprawek w tłumaczeniach
  • Kilka zadań, które zrobiły się same 😀
Ulepszone okienko restartów

Jak widać, lista tego co udało nam się ostatnio zrobić jest całkiem spora, ale lista czasochłonnych rzeczy, które jeszcze mamy do zrobienia też jest niczego sobie 🙂

Co nowego przynosi ServUO

A kto nie lubi zjeść?

No właśnie! Każdy lubi dobrze zjeść, a jak już o jedzeniu mowa, to musicie wiedzieć, że nowe patche w UO zaopatrują umiejętność Gotowanie w całkiem ciekawe i nowe potrawki dodające ciekawe bonusy.

Poniżej znajdziecie screeny z uo.com, jako, że jeszcze nie mamy własnych tłumaczeń na te potrawki (może jakiś konkurs zorganizujemy… 🤔 ). Kilka z nich dodaje właściwości, których pewnie nie znacie, jeśli nie graliście na shardach z patchami powyżej MLa, a są to między innymi “pochłaniacze” obrażeń (soak), właściwość, która zmniejsza szansę przerwania zaklęcia (casting focus), właściwość, która pozwala odrodzić część many z obrażeń nam zadanych (soulcharge).

Spora część z tych potrawek wymaga rybek, które można łowić za pomocą umiejętności Rybactwo wykonując specjalnego questa lub znajdując się w konkretnej lokacji, które, oczywiście, muszą być dostosowane do naszej mapy.

Podsumowanie

I w tym tygodniu to tylko tyle i aż tyle z tego nad czym pracowaliśmy w temacie ServUO.
Mamy też nadzieje, że udało wam się bez większych problemów przeżyć tygodniowe opóźnienie DevBloga.

Widzimy sie znowu za (miejmy nadzieję) dwa tygodnie!

Read More

Nelderim DevBlog #29

Zazwyczaj spotykamy się poprzez Discord omawiając wiele kwestii, tym razem na żywo w towarzystwie planszówek i smacznych napoi 😉 mieliśmy okazję, porozmawiać o przyszłych losach Nelderim. Spotkanie za nami a praca wre, a dziś jak co piątek ruszamy z kolejnym DevBlogiem!

Pomniejsze prace

Podczas ostatnich dwóch tygodni udało nam się również przenieść kilka zmian z RunUO na ServUO. Przede wszystkim przenieśliśmy nasz system niszczenia się przedmiotów (zbroi, broni, ubrań itp…). Udało nam się również dorzucić możliwość przerabiania przez skrybę niechcianych ksiąg magii, aby umożliwić ich recykling, niwelując zaśmiecanie nimi plecaka, skrzyń czy zmuszania do przerzucania tych niepotrzebnych do śmietnika. Odkryliśmy również, że system tak zwanego “autostable” wciąż częściowo działa i podczas zalogowania serwer potrafił przyprowadzić do nas zwierzaki ze stajni. Na szczęście sytuacja opanowana a system został całkowicie wyłączony.

O choroba!

W DevBlog#28 opisywaliśmy nasze zmagania z dostosowaniem Systemu Chorób do RunUO. W tzw. międzyczasie, dodaliśmy tam parę funkcjonalności i opisaliśmy system chorób najszerzej, jak tylko mogliśmy. Znajdziecie je w poszczególnych artykułach: System Chorób, Wampiry, Wilkołaki.

Dość sporo zabawy mieliśmy z tym systemem. Najpierw na samym ServUO, gdy w, bodajże, 2020 roku, system został napisany przez zaprzyjaźnionego kanadyjskiego skryptera z forum ServUO, gdy tylko został nam dostarczony, to wiedzieliśmy, że kilka rzeczy chcemy w nim zmienić. Dopiero w 2022 wpięliśmy go na ServUO, a po zmianach opisanych w DevBlog#28 oraz dodaniu permanentnego statusu mordercy u Wilkołaka, zmianie kolorów gumpów, numerów seryjnych gumpów (na RunUO) oraz kilkunastu godzinach testowania i około 10 crashach, byliśmy w stanie wydobyć z niego coś w miarę zbalansowanego i fabularnie pasującego do klimatu Nelderim.

Tak więc, po pullu i restarcie, ten system możemy fabularnie wykorzystywać do rozwoju eventów, questów oraz postaci na RunUO i ServUO 🙂

“Produkty” regionalne

W jednym z początkowych DevBlogów pokazaliśmy wam nasz autorski system gradacji trudności potworów, który został napisany przez kaczego. Aby ten system zadziałał, musimy dokonać nowego podziału dungów na poszczególne regiony przypisane do konkretnych poziomów. Dodatkowo, ten podział pozwala nam na uporządkowanie spawnerów. Dzięki wyliczeniom Levego, jesteśmy w stanie podzielić spawnery z procentowymi proporcjami odpowiednimi dla danego poziomu.

Jak mogliście zaobserwować w Wulkanie, ten podział musi być jeszcze trochę dopracowany i robimy to trochę metodą prób i błędów, ale wydaje się, że w końcu udało nam się znaleźć idealną formułę dzięki sekwencjonowaniu spawnera.

Wszystkie moby spawnują się po 3 sztuki i przypisane są do pierwszej fazy w sekwencji

Zwierzęta do oswojenia będą wrzucane dodatkowo w osobne spawnery z przełącznikiem Tamowalny/Nietamowalny z szansą ok. 10% (zależnie od dunga).

Co nowego przynosi ServUO

Mechaniczne zwierzaki

Do tej pory na RunUO nie mieliśmy zbytnio wyboru w kwestii kontrolowanych istot, które można stworzyć za pomocą umiejętności Majsterkowanie. Na szczęście emulator ServUO wybawia nas od tego pozbawionego wyboru świata w stylu “kup se, zrób se i poskładaj”.

Znany już nam golem jest najprostrzym spośród mechanicznych istot, które można kontrolować i jak wiemy zajmuje on 3 sloty. Aby go stworzyć musimy mieć:

  • 5 przekładni
  • 50 sztab żelaza
  • 50 sztab brązu
  • 1 kryształ mocy
  • 1 mechanizm sprężynowy

Nowe patche umożliwiają nam stworzenia bardziej zaawansowanych konstruktów.

Aby w nasze łapki wpadła “Instrukcja Mechanicznego Życia”, musimy wykonać quest od…. Sutka (to oryginalna nazwa, no co zrobisz…). Quest nie musi być wykonany przez postać z Majsterkowaniem, ponieważ ta księga może być przenoszona pomiędzy postaciami.

Żeby sobie takiego peta stworzyć, będziemy musieli w menu przedmiotów tworzonych przez majstra, odnaleźć Zmodyfikowany Mechanizm Sprężynowy.

Lista zaawansowanych petów:

Mechaniczny skorpion

Ta najprostsza z zaawansowanych konstruktów i zajmuje jedno miejsce na w slotach. Aby go stworzyć, będziesz potrzebować:

  • 100 sztab brązu
  • 10 przekładni
  • Zmodyfikowany Mechanizm Sprężynowy
Skórzany wilk

Kiedy otrzyma rozkaz ataku, ten mechaniczny towarzysz wyje o pomoc. Maksymalnie 3 dodatkowe skórzane wilki materializują się w około 4-sekundowych odstępach i atakują cel. Po bitwie zdematerializują się w ten sam sposób. Przywołane wilki walczą tylko z początkowym celem, a mechaniczny wilk nie może wezwać więcej pomocników, dopóki już istniejące nie znikną. Mechaniczny wilk zajmuje jedno miejsce w slotach, a przyzwani pomocnicy, zaś, nie zajmują żadnych miejsc.


Do skonstruowania tego zwierzaka będziesz potrzebować:

  • 100 pociętych skór
  • butelkę z olejem (można będzie ją kupić u dostawcy)
  • Zmodyfikowany Mechanizm Sprężynowy
Vollem

Najsilniejszy z tych mechanicznych zwierzaków, zajmuje 2 miejsca na towarzyszy i szybko radzi sobie ze stworzeniami średniego poziomu. Aby go stworzyć, będziesz potrzebować:

  • 50 pociętych skór
  • 25 białych smoczych łusek
  • Zmodyfikowany Mechanizm Sprężynowy

Kotl automaton:

Kotl automaton

Ten elitarny mechaniczny zwierzak może zostać stworzony tylko przez majsterkowicza, który przeczytał recepturę uzyskaną poprzez handel z handlarzem artefaktami Kotl podczas wydarzenia Skarby miasta Kotl lub po zakończeniu wydarzenia z zamówień hurtowych majsterkowiczów. Szansa na powodzenie w stworzeniu tego fenomenalnego zwierzaka wynosi tylko 5%, więc doświadczony rzemieślnik powinien wspomóc swoje wysiłki, wyposażając go w talizman. Udana próba rzemieślnicza umieszcza w plecaku majsterkowicza Odbudowaną Głowę Automatu Kotla.

Do tego potrzebne będą:

Zrekonstruowana Glowa Automatona

Moduł zasilający komorę stazy, który można zakupić od pewnego NPC nazwanego Kolekcjoner lub pozyskać z ukrytych skrzyń w wydarzeniu Skarby miasta Kotl.


Automatyczny siłownik, który można pozyskać w evencie lub z nagród za zamówienia Majstra (opisane w poprzednim DevBlogu), oraz 300 sztab.

Automatony zachowują odcień metalu, z którego zostały wykonane, i otrzymują podwójne premie do odporności i obrażeń, zgodnie z premiami do odporności na materiały i obrażeń, które można znaleźć tutaj. Jeśli automat osiągnie 0 HP, w plecaku właściciela zostanie umieszczona „zepsuta głowa automatona”.

  • popusty pet może być naprawiony za pomocą 75 sztab tego samego materiału, z którego został stworzony
  • zepsuty automaton nadal liczy się do puli slotów
  • popsutego automatona nie można wymienić, sprzedać, ukraść, upuścić czy przenieść

Więcej można dowiedzieć się na oryginalnej stronie UO.

Do czasu startu serwera na nowym silniku mogą zajść zmiany w nazewnictwie oraz mechanice działania poszczególnych elementów tego systemu.

Podsumowanie

Na dziś to już tyle, ostatnie Devblogi poruszają się w podobnej tematyce, ponieważ dotykają zagadnień, które zajmują sporo czasu i wykorzystują naszą moc przerobową do maksimum. W tle oczywiście działamy z innymi drobnymi projektami, ale nimi chwalić będziemy sie, gdy ich faza rozwoju będzie znacząca lub gdy nadejdzie odpowiedni moment na małe zaskoczenie 😉
Do następnego!

Read More

Nelderim DevBlog #28

Mamy nadzieje, że bierzecie witaminy, dbacie o siebie i ogólnie jesteście zdrowi, bo dzisiaj będzie głównie o chorobach, ale nie bójcie się, bo to chodzi o takie wirtualne, komputerowe choroby 🙂

Przystosowanie systemu chorób z ServUO do RunUO

W DevBlog#3 mówiliśmy po krótce o systemie chorób, w którym zawierają się również systemy wampirów i wilkołaków. Na dzień dzisiejszy, jesteśmy w stanie powiedzieć, że ten system na dobre zastąpi obecne bonusy klas fabularnych Wilkołaków i Wampirów.

Najpierw opowiemy wam o procesie przepisywania kodu. Zacznijmy od tego, że ten system został napisany pod nowsza wersje .NET, więc pierwszym krokiem było “obniżenie wymagań” i przepisanie fragmentów kodu do niższej wersji.

Oczywiście system opierał się przepisaniu

Po wielu próbach i 2 dniach spędzonych nad systemem, udało się:

Serwer się skompilował. Jupii!

System jest dość rozbudowany i cały czas się go uczymy. Na chwilę obecną, oprócz tego co opisaliśmy w DevBlog#3, możemy powiedzieć, że oprócz wilkołaka i wampira, z takiego systemu chorób może nam również nas dopaść, m.i.: dur brzuszny, tasandorska szczurza grypa, czy też kac (no chyba, że się jest krasnoludem, to już tylko cała reszta 😉 ). Możemy sterować obszarami, które będą potencjalnymi lokacjami, gdzie można się zarazić. Choroby można bardzo łatwo wyleczyć u medyka poprzez 2x klik na niego, a on nam poda lek.

Każdy zarażony jakimkolwiek wirusem będzie miał informację o tym, oraz gump stanowiący o tym, jak bardzo zaawansowana jest choroba. Im bardziej zaawansowana, tym większa szansa, że będziemy odczuwać jej skutki, t.j.: obrażenia. Otrzymujemy tez komunikaty o naszym stanie zdrowia, postać będzie kichać, kasłać, czasem zwijać się z bólu (animacje + dźwięk).

Przykładowy gump – tutaj od likanotropii
Informacje o tym jak się czujemy (można wykorzystać do RPG 😉 )

Wampiry i Wilkołaki mają swoje bonusy, ale i mają kary, np.: Wampir może otrzymać obrażenia od słońca, jeśli nie jest w domu i ubrany w 5 części zbroi lub gdy jest w pobliżu czosnku

Po drodze, oczywiście, nie obyło się bez bugów. Jeszcze nie do końca wszystkie naprawiliśmy, ale to kwestia kilku dni.

Po zakończeniu poprawek bugów, przystąpimy do solidnego testowania systemu, a potem pojawi się zapewne dość obszerny i szczegółowy artykuł na WWW dotyczący systemu, zanim go wprowadzimy. System ma charakter RPGowy i jako taki będzie wykorzystywany.

Porządki, zaległości, nowości, kombinacje

Za kulisami zadziało się również sporo pomniejszych zmian w ServUO, o których z pewnością warto wspomnieć.

Jedną grupą takich tematów było przenoszenie bieżących zmian z aktualnego silnika na ServUO i znalazły się tutaj takie drobiazgi jak poprawione definicje fryzur dla elfów, jak i poprawki zapobiegające zawieszaniu się serwera.

Nieustannie znajdujemy też przeróżne teksty, które tłumaczymy na nasz rodzimy język, żeby immersja i budowa świata była spójna.

Udało nam się namierzyć i wyeliminować wręcz zakurzony już temat zbugowanego AI niektórych potworów, który opisywaliśmy na jednym z pierwszych DevBlogów.

Zrobiliśmy wstępne porządki oraz inwentaryzacje towarów przeróżnych kupców i sprzedawców.

Uzupełniliśmy braki w menu Inskrypcji o czary umiejętności specjalnych i wprowadziliśmy porządek z kategoriach taki sam jak w ostatnim patchu.

Zamknęliśmy nareszcie temat przywołańców nekromanty na ServUO, jako że udało nam się nareszcie przenieść możliwość rozkładania umarlaków przy pomocy skalpela.

I na sam koniec zrobiliśmy porządek w kodzie koni bojowych i proszków wzmocnienia, jako że były to częsci kodu, które po prostu potrzebowały powiewu świeżości 🙂

Co nowego przynosi ServUO

Pani Helenko, zamówienie nr 69 do stolika Nelderim, prsz.

Przykład zlecenia od alchemika

No właśnie, zamówienia. System zamówień już dotknęliśmy w DevBlog#5, jednakże dopiero teraz udało nam się zasiąść do jego testów. Podczas owych testów wysnuliśmy pewne wnioski, jednakże, nie są to jeszcze konkrety, które przyjęliśmy do realizacji, bo to wymaga zorganizowania zebrania i przegadania wszelkich za i przeciw, ale na pewno jest to pewien kierunek, w którym chcielibyśmy podążać.

Obecne spostrzeżenia:

  • za 10 pkt można kupić narzędzie, które ma 250 użyć -> prawdopodobnie trzeba się będzie albo go pozbyć, albo diametralnie obniżyć ilość użyć ze względu na to, iż mogłoby to wpłynąć na użyteczność Majsterkowania
  • za punkty można uzyskać tytuł (taki, który się pojawia jedynie w Paperdollu)-> u nas tytuły są dostępne za PDki i tak chcielibyśmy, by zostało
  • w zleceniach Łukmistrza (system OSI) są dostępne mapy na konkretne kolory drewna -> u nas nie ma podziału gdzie jakie drewno można zdobyć, więc takowe mapy nie mają zastosowania
  • u skryby w zleceniach jest farba do ksiąg -> tutaj musimy się zastanowić czy jest sens dublowania pigmentów
  • u alchemika są jakieś kociołki transmutacji -> zmienia on jeden rodzaj desek w inny; brzmi to całkiem ok i może być użyteczne
  • u alchemika w zleceniach są jakieś naturalne farby -> również dubluje nam się z pigmentami, więc trzeba przemyśleć czy to chcemy
  • u kowala są podobne mapy, jak u łukmistrza -> nasz system kopania jest trochę inny, więc takowe mapy są bezużyteczne
  • u majstra są receptury na różne itemy -> rozważamy jeszcze system receptur, także TBA
  • u majstra są mapy miningu -> j.w.
  • u majstra można pozyskać narzędzia do tworzenia automatonów (o nich więcej w kolejnych DevBlogach)
  • za punkty u każdego ze zleceniodawców można pozyskać talizmany z bonusem do danej profesji, takie jakie dzięki anikowi mamy też obecnie na RunUO dla łukmistrza i kowala
Przykład kociołka transmutacji

Podsumowanie

Choroby, Przemiany, Porządki, Poprawki, Zlecenia, Nagrody… długo można by o tym wszystkim pisać, ale na dzisiaj chyba już wystarczy 🙂

Jak zawsze, podzielcie się z nami na Discordzie, co uważacie o nadchodzących zmianach.

Do następnego!

Read More

Nelderim DevBlog #27

Macie przed sobą okrągłą, dwudziestą siódmą cześć naszego DevBloga!

Jak to okrągłą? A tak, że pierwsza część DevBloga pojawiła się mniej więcej rok temu 🙂

Zapraszamy do lektury.

Wykrywanie bez Wykrywania, say whaaaat?!

Jest dzień 24 października 2021 roku, godzina 23:04. Nagle na ekipowego Discorda wpada informacja o dość osobliwym bugu/exploicie, który był w UO od zawsze i w zasadzie nikt wcześniej do tego nie przywiązywał uwagi.

Problem polegał na tym, że bez umiejętności Wykrywania czy Tropienia, można było sprawdzić czy wokół nas nie kryje się jakiś ukryty skrytobójca czy złodziej, a nawet GM.

Po namyśle, zdecydowaliśmy się na proste rozwiązanie, które nie rzutuje w żaden sposób na grę, a jedynie poprawia wyżej wymienioną nieprawidłowość, mianowicie, efekt czaru wciąż ma miejsce, czy to Arch Cure, czy Wither, czy czary barda z Umiejętności Specjalnych, jednakże, animacja nie pokazuje się na ukrytym celu.

Błędy w mapie

Przez ten czas dokonywaliśmy również drobnych poprawek w mapie, które podajecie na kanale #sugestie w temacie #błędy w mapie. Żeby nie robić 2x tej samej roboty, zdecydowaliśmy się docelowo poprawiać wszystko już na mapie na ServUO.

Jeden z przykładowych błędów na mapie

Licznik Online

Ostatnio Nelderim cieszy się zwiększoną popularnością, co wiąże się z większa liczbą aktywnych graczy.

W pogoni za rozwojem i jednocześnie spełniając sugestie oraz pomysły niektórych graczy zainwestowaliśmy odrobinę czasu w coś co powinno ułatwić nam dalej się rozwijać.

Dodatkiem tym jest status serwera gry na naszej stronie!

Taki prosty blok pozwala na pierwszy rzut oka stwierdzić tym, którzy dopiero co znaleźli naszą stronę, czy serwer działa oraz ilu graczy gra na serwerze.

Co nowego przynosi ServUO

Masz talent Magu, czyli kolejna seria talentów (masterek).

Dla wszystkich szkół magicznych:

Wzmocnione Przywołanie (Pasywne)

Gdy talenty magii, nekromancji, druidyzmu lub mistycyzmu są aktywne, osoba używająca magii otrzymuje wzmocnienie do przywołanych stworzeń na podstawie poziomu swojej umiejętności i poziomu talentu.

Dla Magii:

Promień Śmierci

Mag skupia promień śmierci na swoim przeciwniku, i zadaje obrażenia w oparciu o umiejętności magiczne, Mądrość i poziom talentu, o ile mag ma manę, a cel jest w zasięgu.

Eteryczny podmuch

Mag przywraca dużą ilość many w zależności od poziomu talentu, a częstotliwość używania tej umiejętności zależy od poziomu umiejętności magii, mądrości i poziom talentu.

Dla Mistycyzmu:

Podmuch z zaświatów

Mistyk uwalnia falę energii pustki, która pulsuje w kierunku atakowanych celów i zadaje obrażenia chaosu w zależności od umiejętności mistycyzmu oraz skupienia lub umiejętności nasycania (Imbuing). Może zastosować debuff “rozerwania” many na trafionych celach, co spowoduje, że cel straci dodatkową manę i przywróci tę manę rzucającemu czar Podmuch z zaświatów.

Mistyczna broń

Mistyk przekształca umiejętność mistycyzmu w umiejętność wymaganą w aktualnie używanej broni, tym samym otrzymując karę do umiejętności mistycyzmu opartą na poziomie talentu.

Nekromancja

Dowodzenie nieumarłymi

Nekromanta ma szansę nakazać nieumarłym wykonanie ich rozkazów w oparciu o umiejętności nekromancji, umiejętności Rozmowy z Duchami, poziom talentu i trudność w bardowaniu stworzeń (Barding Difficulty). Wymaga 2 slotów kontroli zwierząt.

Wzmocnienie

Nekromanta tworzy pole wzmocnienia w wybranym miejscu, które powoduje, że wszystkie zaklęcia nekromancji, z wyjątkiem Blood Oath, działają na wszystkie cele w polu ze zmniejszoną siłą zaklęcia w oparciu o umiejętność Nekromancji, umiejętność Rozmowy z Duchami i poziom talentu.

Druidyzm:

Mistrzowie Druidyzmu otrzymają jedno dodatkowe Skupienie (Arcane Focus) na każdy poziom talentu Druidyzmu. Tajemne Skupienie nadal ogranicza się do premii do siły wynoszącej 6. Mistrzowie Druidyzmu mogą samodzielnie rzucać Tajemny krąg, ale nie otrzymują premii za krąg.

Tarcza Many

Tworzy tarczę na Druidzie, która ma szansę odjąć nadchodzące obrażenia z puli many Druida w oparciu o umiejętność Druidyzmu, skupienie na magii (Arcane Focus) i poziom talentu.

Przyzwanie żniwiarza

Druid przywołuje nieruchomego żniwiarza na czas zależny od umiejętności Druidyzmu i umiejętności Medytacji. Siła przywołanego żniwiarza zależy od umiejętności Druidyzmu, skupienia na magii (Arcane Focus) i poziomu talentu.

Tekst zaadaptowany z uo.com

Podsumowanie

I na tym kończymy dzisiejszy wpis w DevBlogu.

Udało nam się regularnie prowadzić ten dziennik przez okrągły rok i będziemy go prowadzić, aż zakończymy migrację na ServUO, a może nawet i jeszcze dłużej!

Trzymajcie się i do następnego!

Read More

Nelderim DevBlog #26

Dwa tygodnie mijają tak szybko jak 14 dni… niesamowite można powiedzieć, jak szybko musimy Wam dać kolejną porcję informacji. Nie wydarzyło się nic spektakularnego, głównie byliśmy zajęci przerzucaniem poprawek, z obecnego serwera na ServUO, ale to i wszystkim innym możecie przeczytać poniżej

Synchronizacja zakończona pomyślnie

Zwycięstwo!

Po niezliczonych godzinach boju z kodem, możemy (ponownie) ogłosić że udało nam się uzyskać kompatybilność zapisu świata z obecnego silnika na ServUO.

Dodatkowo przy okazji udało nam się posprzątać to i owo, a jeszcze ponad to uprościliśmy do minimum proces przenoszenia zapisu z jednego silnika na drugi i teraz potrzebujemy wykonać zaledwie trzy dość proste kroki w porównaniu do uprzednich kilkunastu minut, przeróżnych operacji i klikania w komputer.

Ten sukces otworzył nam możliwość szybkiego potwierdzenia czy problemy z wydajnością ServUO, o których pisaliśmy jeszcze w DevBlog 22, mogły być spowodowane mocno zaśmieconym zapisem świata po naszych testach i byliśmy wielce zasmuceni, gdy okazało się, że na świeżutkim sejwie, serwer wciąż “mocno się poci”.

Założyliśmy zatem specjalne kombinezony do nurkowania i po względnie krótkim czasie udało nam się namierzyć w systemie głównego zegara serwera problem, który omyłkowo wprowadzili twórcy ServUO.

Poprawka tego błędu spowodowała, że serwer był w stanie w miarę stabilnie działać, a to znaczyło, że mogliśmy wrócić do testów…

Test na Buga – pozytywny

Po licznych sukcesach w przenoszeniu sejwa i przywracania ServUO do żywych, przyszła pora na sprawdzenie czy zmiany w serwerze, które robiliśmy trochę na ślepo działają tak jak powinny.

Oczywiście jak to bywa, nie obyło się bez problemów organizacyjnych, gdzie albo były błędy z konfiguracją, albo komuś nie działał nowy klient, albo ktoś się nie mógł połączyć do serwera testowego, natomiast nie powstrzymało nas to od testów.

Sprawdziliśmy wiele zmian i poprawek i część działała jak należy, część wymagała dodatkowej pracy, udało nam się namierzyć kilka nowych błędów i rzeczy do naprostowania, ale najważniejsze jest to, że nareszcie możemy wrócić do regularnego testowania serwera, a to z kolei pozwoli nam dokładniej szacować ile jeszcze może trwać migracja.

Poniżej możecie zobaczyć kilka zrzutów ekranu z ostatniej sesji testowej 🙂

Żrącą krew Wielkiej Pokracznej Bestii da nam znać, że lepiej nie stać w tym miejscu
Z cyklu: Czy też wam się tak psuje? Nie. U mnie działa
Słowa oswajania zależne od rasy i tłumaczone na język rasowy

Co nowego przynosi ServUO

Inflacja, pieniążki uciekają. Ale zaraz, zaraz… Mamy coś co może zabezpieczyć wasze ciężko zarobione/ukradzione centary…

Sejf na ścianę to dodatek/dekoracja do domu wprowadzony wraz z Publish 90. Ten przedmiot może być tworzony za pomocą umiejętności Majsterkowanie.

Dostęp do zawartości sejfu domyślnie posiada tylko właściciel oraz współwłaściciele i mają oni możliwość dowolnego transferu środków między sejfem, a swoim kontem zabezpieczonym(o którym będziemy jeszcze kiedyś pisać na łamach DevBlogu)

Sejf ścienny mieści do 100 000 000 sztuk złota.

Podsumowanie

Na dziś to tyle, mamy nadzieję, że nasza systematyczność pokazuje Wam, że wiele się dzieje za kulisami i ciągle walczymy o to, by ServUO stało się teraźniejszością, a nie znienawidzoną przez niektórych emotką na Discordzie 😉 . Tyle od nas i do za dwa tygodnie!

Read More

Nelderim DevBlog #25

Bodhi Day, Chanuka, Pancha Ganapati, Yalda, Szczodre Gody czy Boże Narodzenie, cokolwiek świętowaliście, zwieńczone szampańskim powitaniem nowego roku oraz długim weekendem święta Trzech Jarli… czy tam Trzech Króli, zapraszamy na nieco krótkawy z wyżej wymienionych powodów, lecz mamy nadzieje oczekiwany, dwudziesty piąty już DevBlog.

Stopniowanie poziomów trudności lochów

Jak już wiecie zarówno z poprzednich DevBlogów jak i Discorda, wprowadzamy nowe rozwiązanie odnośnie trudności lochów i rozmieszczenia potworów. Jest to nasz autorski pomysł, którym chcemy usystematyzować trudność lochu idąc w jego głąb. Część zmian widoczna jest już teraz na naszym obecnym serwerze co opisywaliśmy w poprzedniej paczce poprawek (czytaj więcej).
Zacznijmy od początku. Wcześniej każdy dungeon posiadał pulę stworów jaka w nim występowała, dany spawner losował z puli przykładowo 15 różnych stworów charakterystycznych dla tej lokacji i wybiera z nich 7 które się pojawią.

Count – oznacza ilość jaka obecnie jest zespawnowana
Max – maksymalna ilość powstałego moba z danego spawnera
Spawner – w tym przypadku zielona cyfra 7 oznacza ile mobów ze spawnera jest utworzonych, natomiast czerwona cyfra 7 oznacza jaką maksymalną liczbę mobów może wypuścić spawner.

Zauważyć można, że spawner może posiadać w sobie ogromna liczbę stworów o różnym natężeniu maksymalnej ilości dzięki czemu można sterować procentową szansą na danego stwora. Mniej więcej tak właśnie działa system, który opracowaliśmy. Dzielimy wszystkie pule wszystkich stworów w danym dungeonie na 5 grup: bardzo łatwe, łatwe, średnie, trudne, bardzo trudne oraz analogicznie każdy dungeon podzielony został na 5 poziomów trudności. Dokonaliśmy tego za pomocą Region Editora, w którym prostokątami na mapie można stworzyć region. Poniżej przykład jak utworzony jest fragment trudny w Wulkanie:

Poniższa tabela ukazuje procentowy udział poklasyfikowanych na grupy stworów w danym fragmencie lochu:

Oznacza to tyle, że w obojętnie którym dungeonie, we fragmencie bardzo łatwym będą występować tylko moby bardzo łatwe i łatwe (z puli wszystkich potworów z danego lochu) w stosunku 70/30, natomiast we fragmencie bardzo trudnym nie spotkamy potworów zklasyfikowanych jako bardzo łatwe (0%), szczątkową ilość mobów łatwych (5%), niewiele potworów przydzielonych do grupy średniej (15%) oraz zdecydowaną większość potworów trudnych oraz bardzo trudnych (kolejno 35% oraz 45%)

Trochę cyferek i pokrętnej logiki, ale po co to wszystko? Odpowiedź jest bardzo prosta, im dalej w las tym loch będzie stawał się trudniejszy co w grach jest chyba standardem, obecnie było to zrobione źle lub nie było zrobione wcale. Drugim powodem jest zmniejszenie obciążenia serwera – co to znaczy? Każdy loch posiadał ogromną ilość spawnerów generując stwory lokalnie (w regionie od 5-15 kratek), podzielenie lochów w przedstawiony sposób daje nam ograniczenie ilości spawnerów do 5 na każdy loch, ponieważ będą one spawnować moby globalnie w całym wyznaczonym regionie. Pozwala to zredukować ilość spawnerów nawet do 80% w danym lochu.

ServUO przyniesie również kolejne urozmaicenie, ponieważ pozwoli skalować siłę danych potworów. Czyli na przykład we fragmencie bardzo łatwym spotkamy szkieleta słabego lub zwykłego, a we fragmencie bardzo trudnym możemy mieć możliwość spotkać bardzo trudnego prastarego wyrma lub zwykłego. Jak to działa? Śpieszę z tłumaczeniem! Każdy mob posiada bazowe odporności i statystyki w danym zakresie. Jest to nasz punkt odniesienia jako 100% nasycenia i oznacza poziom bazowy moba, w którym nic się nie zmienia, natomiast potwór bardzo trudny (posiadający prefix Starszy/Większy/Potężny – póki co jest to jedynie koncepcyjne) będzie posiadał 150% podstawowego nasycenia. System ten wciąż jest na etapie rozwoju, ale już nie możemy się doczekać by zobaczyć rezultat jak zmienią się dungeony!
A Wy już dziś możecie wypróbować podział trudności lochów w lochach takich jak Wulkan, Sale Paroxysmusa, Komnaty Wielkiej Pokracznej Bestii, Jaskinia Błysków, Grota Królowej Wróżek oraz Posterunek Varg (lochy znajdziesz tutaj).

Pomniejsze prace

Oprócz prac mających znaczny wpływ na mechaniki i rozgrywkę, w ramach relaksu, powolutku, w miarę systematycznie czyścimy naszą tablicę z przeróżnych mniejszych zadań które mamy zapisane, a które prędzej czy później należałoby zrobić.

Jednym ze zbiorów zadań jest przeniesienie ostatnio wprowadzonych zmian z obecnego serwera na ServUO i to właśnie nad tymi zadaniami ostatnio pracujemy.

W tej kwestii udało nam się zamknąć kilkanaście małych tematów, a do tego kilka z zadań po szybkiej weryfikacji okazało się być już nieaktualnych bądź nawet zrobionych.

Na drobne wyróżnienie zasługuje natomiast akcja, gdzie przepisaliśmy naszych gadających NPC i udało nam się osiągnąć prawie 🙂 te same rezultaty, podczas gdy ilość kodu ograniczyliśmy do około 25%.

Co nowego przynosi ServUO

System zestawów przedmiotów

Gracze RPG z pewnością kiedyś spotkali się z obecnym w innych grach systemem zestawów przedmiotów (item set).

W skrócie, taki system polega na tym, że można zdobyć przedmioty, które są częścią jakiegoś zestawu.

Takie przedmioty zazwyczaj mają właściwości porównywalne z przedmiotami słabymi, bądź przeciętnymi, jednakże, jeżeli zbierzemy i ekwipujemy pełny zestaw, to przedmioty te w synergii posiądą dodatkowe właściwości.

I dokładnie taki system będziemy mieć do naszej dyspozycji po migracji na nowy silnik 🙂

ServUO domyślnie posiada 32 gotowe zestawy, które pozyskiwać można z potworów, z questów, a również niektóre może wytwarzać rzemieślnik, natomiast żądnych większej ilości konkretów zapraszamy TUTAJ

Oczywiście system ten możemy modyfikować i rozwijać i mamy już na to kilka pomysłów, ale na to jeszcze przyjdzie czas.

Niezależnie od tego czy po prostu lubicie zbierać graty, czy może takie zestawy pomogą wam w ubraniu wymarzonej postaci, czy może pozwolą wam stworzyć zupełnie nową postać, na pewno będzie to ciekawy dodatek do naszego świata.

Podsumowanie

Obżarstwo, szampan, imprezy, spotkania, postanowienia, czyli święta, święta i po świętach.

Na szczęście to już za nami i możemy wrócić do codzienności i komputera 😀

Mamy nadzieję, że 2023 będzie rokiem Nelderim, albo chociaż rokiem Nelderim na ServUO, no ale to już czas pokaże 😉

Do następnego!

Read More

Nelderim DevBlog #24

Mistrzostwa świata w kopanie piłki już za nami, a zaraz czekają nas nadchodzące święta.

Z okazji tychże nadchodzących świąt robota idzie nad wyraz wolno, tak więc wpis na blogu jest raczej skromny…

CentrED#

Ostatnim razem pisaliśmy o początkach przepisywania narzedzia do edycji map CentrED, i rówineż w tym tygodniu rozpoczniemy tym tematem.

Dwa tygodnie temu skończyliśmy wpis bloga, w momencie, gdy klient łączył się i wyświetlał “coś”.

Była to oznaka, że już niewiele nam brakuje, aby mieć w pełni funkcjonalne narzędzie i rzeczywiście problemów było niewiele, ale na tym etapie, były to problemy dość czasochłonne do rozwiązania.

Najpierw uporaliśmy się z problemem niepoprawnego wyświetlania obiektów na mapie z powodu błędów w bardzo pokrętnej oryginalnej logice, a rozwiązaliśmy to najzwyczajniej upraszczając i sprzątając ową logikę.

Następnie udało nam się naprawić większość problemów z samymi operacjami edycji mapy i nareszcie mogliśmy zobaczyć, żę wszystko działa, ale aplikacja działała dość niestabilnie.

Poprawiliśmy błędy w zapisywaniu konfiguracji, pomniejsze literówki w przeróżnych miejscach, naprawiliśmy logikę wyświetlania minimapy, a także rozwiązaliśmy problem z kompresją danych spowodowany niezamkniętym strumieniem danych 🙂

Na sam koniec wprowadziliśmy wiele poprawek w samym kodzie sieciowym aplikacji i w tym momencie nasze testy aplikacji nie wykazały żadnych różnic między oryginalnym serwerem, a naszą przepisaną wersją.

W między czasie zrobiliśmy również mały eksperyment i okazało się, że serwer wymaga zaledwie kilku drobnych modyfikacji, żeby móc działać ze zmodyfikowanym klientem CentrED+.

Mimo że nasz szybki eksperyment pokazał, że jest to możliwe, to niestety, ale jeszcze nie wszystko działa ze zmodyfikowanym klientem i potrzebujemy poświęcić trochę więcej czasu na naprawę niektórych problemów

Synchronizacji ciąg dalszy

W przerwach między życiem codziennym i przygotowaniami do zbliżających się świąt, kontynuujemy temat przenoszenia ostatnich zmian z obecnego silnika na ServUO.

W tej kwestii raczej nie zadziało się nic wybitnego, może za wyjątkiem wciąż trwających większych porządków w naszych gadających NPC.

Co nowego przynosi ServUO

Serce z kamienia, twardy jak skała,…te pojęcia zakorzeniły się w naszym języku, niczym drzewa w pienińskich skałach…, a jeśli już mówimy o skałach i kamieniach, to warto wspomnieć, iż przejście na długo wyczekiwany silnik ServUO pozwoli nam na rozszerzenie palety rzeczy, które możemy stworzyć za pomocą Kamieniarstwa. Nasze customowe posągi, to jedno, ale do tego dodatek ToL pozwala nam na tworzenie przedmiotów do budowy i dekoracji domków, Więcej detali i informacji znajdziecie TUTAJ.

Podsumowanie

Leniwa przedświąteczna atmosfera dość mocno daje nam się we znaki, ale mimo to staramy się cokolwiek działać w kierunku migracji.

Po świętach i po nowym roku myślimy, że już wszystkim będzie tęskno za komputerem i wrócimy na normalne obroty.

I na sam koniec bloga, chcemy wam wszystkim życzyć spokojnych i wesołych świąt!

Do następnego!

Read More

Nelderim DevBlog #23

Ho, ho, ho, witajcie ponownie podróżnicy.

Okres przedświąteczny chyba możemy już uznać za rozpoczęty, ale to nie oznacza, że będziemy siedzieć z założonymi rękami i czekać na brodacza w czerwonym wdzianku.

Przejdźmy zatem do lektury 🙂

CentrED#

Wielu z was możliwe że kojarzy, chociażby z nazwy narzędzie o nazwie CentrED, które służy do edycji map przez wielu użytkowników jednocześnie.

Jest to jedno z trzech narzędzi, bez których zdecydowanie nie byłoby Nelderim, ponieważ wszelkie zmiany na mapie wprowadzamy właśnie z jego wykorzystaniem.

Narzędzie to powstało ponad 15 lat temu (a przynajmniej tylko tyle sięga dostępna historia), a ostatnia stabilna wersja pochodzi z roku 2012(chociaż w ostatnich miesiącach oryginalny autor, znów zaczął robić zmiany w kodzie).

Dość dziwne jest, że przez tyle lat nie powstało, żadne narzędzie, które jest w stanie dorównać CentrEDowi(istnieje CentrED+, który posiada wiele dodatkowych funkcjonalności, ale jest okrutnie zabugowany, a także na horyzoncie jest UOStudio, które jest na bardzo wczesnym etapie rozwoju).

Sami próbowaliśmy nawet spróbować usprawnić CentrEDa, ale język pascal, w którym jest napisany, jest dość dużą przeszkodą, ponieważ jest dość mocno przestarzały, a jego narzędzia programistyczne odbiegają bardzo od nowoczesnych narzędzi.

Postanowiliśmy zrobić zatem szybki eksperyment i spróbować przepisać CentrEDa, aby był bliższy dzisiejszym standardom.

Na pierwszy ogień poszła część serwerowa, ponieważ posiada dużo mniej kodu i nie posiada interfejsu graficznego, który potrafi być mocno problematyczny.

Cały proces przepisywania okazał się prostszy niż początkowo zakładaliśmy i mieliśmy większą część kodu wstępnie gotową po około trzech tygodniach pracy.

Jedynym kawałkiem, który wymagał więcej myślenia i kombinowania, był kod sieciowy, którego nie dało się po prostu przepisać, a trzeba było w dużej mierze napisać zwyczajnie od nowa.

Gdy w końcu udało nam się projekt w ogóle skompilować cały kolejny dzień poświęciliśmy na naprawianie wszelkich błędów, pomyłek i literówek, aż w końcu udało nam się osiągnąć pierwszy sukces!

Oryginalny klient CentrEDa połączył się z naszym serwerem, początkowa komunikacja odbyła się bez problemów, a sam klient jest nawet w stanie poprawnie wyświetlić niektóre dane.

Niektórzy mogą się zastanawiać, czy takie prace przypadkiem nie odkładają w czasie migracji na ServUO i odpowiedź jest i tak i nie.

Tak, bo rzeczywiście w tym czasie moglibyśmy pracować nad migracją, a nie ponieważ dobre narzędzia bardzo pomagają przy pracy, a dodatkowo taka praca przy innym projekcie pozwala nam się zresetować.

Mając pełną kontrolę nad takim narzędziem jak CentrED z pewnością wszyscy na tym skorzystamy 🙂

Powiew świeżości u bossów

Jako że ostatnie 2 tygodnie były raczej dwoma tygodniami odskoczni i eksperymentów, to postanowiliśmy poświęcić trochę czasu na rozwój serwera i wypróbować pomysł, który od dawna chodził nam po głowach.

Pomysłem tym są specjalne ataki kierunkowo-obszarowe u bossów, które są odpowiednio wcześniej oznaczane i wymagają interakcji od gracza.

W założeniu ma to dodać dynamiki do walki z bossami i będzie wymagać trochę więcej ruchu od graczy.

Na razie jesteśmy na etapie poszukiwań, a pierwszy efekty możecie zobaczyć na poniższym filmie

Oczywiście możliwości są niezliczone i możemy wyprowadzać ataki o różnych kształtach, różnych opóźnieniach, różnych efektach i co nam tylko przyjdzie do głowy, ale główne założenie pozostaje bez zmian:

Gdy widzisz, że boss wykonuje atak, zrób wszystko żeby go uniknąć.

Nie jest jeszcze ustalone czy mechanika ta na 100% się pojawi, ale na razie pierwsze wrażenia są bardzo pozytywne i na pewno będziemy próbować.

No i chyba najważniejsze jest to, że system ten pojawi się jeszcze na obecnym serwerze, bo nie ma żadnych przeciwskazań, żeby odkładać go aż do ServUO 🙂

Co nowego przynosi ServUO

Kolejny ciekawy boss, który zostaje dodany na ServUO, to Niporailem. Jest to gargulec, który ma nową odświeżoną grafikę. Z ciekawych mechanik, ten boss posiada umiejętność przywoływania duchowej zbroi – mobka, który znika po śmierci. Dodatkowo, boss potrafi rzucić czar duszenia z Nekromancji (Strangle) i posiada umiejętność Złoto Głupców – rzuca kupki złota o nadmiernej wadze, które lądują wprost w plecaku gracza. Złoto zamienia się w piasek, gdy rzucamy je na ziemie.

Więcej szczegółów i cyferek tutaj

Podsumowanie

Mamy nadzieję, że dotrwaliście do końca i tak samo jak my, nie możecie się doczekać, czym będziemy się mogli pochwalić za kolejne 2 tygodnie.

Kto wie, może przepisany CentrED okaże się o tyle lepszy, że przyśpieszy to cały proces migracji albo otworzy nowe możliwości?

Dajcie nam też znać co sądzicie o nowym systemie dla bossów i czy macie jakieś uwagi albo pomysły 🙂

Do następnego!

Read More

Nelderim DevBlog #22

22 DevBlog w 2022 roku…, jeśli patrzeć na liczby, to ten DevBlog skupia się właśnie na liczbach: procenty, FPSy, Mbps’y, ładunki, milisekundy oraz ilości szarych ekranów po śmierci podczas testów i chusteczek do otarcia łez podczas poprawiania błędów i szukania rozwiązań istniejących problemów.

Jeśli kręci Cię to, no to nie pozostaje nam nic innego, jak tylko zaprosić do lektury! 🙂

Wideo ostre jak maczeta

Ci którzy śledzą naszą twórczość na YouTube zapewnie doskonale wiedzą, że do tej pory nasze nagrania z eventów nie cechowały się najlepszą jakością, ale nadchodzą lepsze czasy 🙂

Do tej pory nagrywaliśmy z wykorzystaniem narzędzia OBS na domyślnych ustawieniach i efekty jakie były doskonale widać.

Na początku próbowaliśmy zmieniać tylko podstawowe parametry nagrywania lecz nie dało to praktycznie żadnego efektu, poza zwiększeniem rozmiaru nagrań.

Postanowiliśmy dokładnie zgłębić temat nagrywania i przetestowaliśmy każdy parametr w OBS i wypróbowaliśmy wiele przeróżnych kombinacji, żeby uzyskać jak najwyższą jakość nagrań.

Po kilku godzinach testów i dziesiątkach, bądź nawet setkach prób nie udało nam się osiągnąć zadowalających efektów i postanowiliśmy poszukać innego programu.

Na pierwszy ogień poszedł Xbox Game Bar wbudowany w system Windows, lecz szybko okazało się, że jest bardzo ograniczony, a nagrania są bardzo podobne do tych z OBS.

Następne wypróbowaliśmy narzędzie Nvidia Shadowplay i ostatecznie okazało się strzałem w dziesiątkę.

Na domyślnych ustawieniach jakość wideo była dużo lepsza niż z pozostałych programów, jednakże niemożliwe jest przechwytywanie samego okna ClassicUO z powodu braku kompatybilności, a dodatkowo rozmiar nagrań był większy niż z innych programów.

Problem większego rozmiaru rozwiązaliśmy bardzo szybko, ograniczając bitrate nagrań z 30 do 15 Mbps, jest to nawet z zapasem, ponieważ YouTube kompresuje nagrania 1080p 60fps do około 12Mbps.

Oczywiście sprawdziliśmy na własne oczy czy jest jakaś różnica między nagraniami o różnych ustawieniach jakości i jednogłośnie stwierdziliśmy, że jak nie widać różnicy to po co przepłacać 🙂

Ostatecznie udało nam się zmniejszyć rozmiar nagrań o około 30%, tak więc nasze dyski twarde pożyją trochę dłużej.

Drugi problem rozwiązaliśmy opcją, żeby Nvidia Shadowplay przechwytywała cały ekran, jednakże dążąc do perfekcji ustaliliśmy, że chcemy nagrywać wydarzenia w oknie bezramkowym (borderless), żebyś nie marnować części ekranu na bezużyteczną ramkę okna 🙂

Tutaj pojawił się kolejny problem, ponieważ Nvidia Shadowplay wybiera ekran który chce nagrywać w sposób, którego nie udało nam się rozgryźć, a ClassicUO w trybie bezramkowym było przyklejone do “pierwszego” ekranu i zmuszenie go do przejścia na ekran który chce nagrywać Shadowplay było problematyczne.

Na szczęście ClassicUO ma otwarty kod źródłowy i jego twórcy bez zastanowienia zaakceptowali naszą poprawkę, która przykleja okno bezramkowe do ekranu na który przeciągniemy okno ClassicUO.

Poniżej możecie zobaczyć już teraz jak będą prezentować się nasze nagrania z przyszłych eventów.

Przedświąteczne porządki i zrzut pomniejszych akcji

Migrowanie serwera na nowy silnik dodatkowo utrzymując ciągle obecny serwer jest dość pracochłonne.

Zmiany pojawiają się na obu wersjach serwera, pojawiają się bugi, które występują czasami tu, czasami tam, czasami wszędzie, nasz Discord jest wypchany sugestiami oraz pomysłami, które albo robimy już teraz albo są odłożone do ogromnego “kubła”, które wszyscy dobrze znamy jako “będzie na ServUO”.

Organizacja pracy oraz względny porządek to klucz do sukcesu i nadszedł czas kiedy musimy uporządkować wszystko, aby móc sprawnie dalej pracować.

Stworzyliśmy listę zmian, które musimy przenieść z obecnego serwera na ServUO i znajduje się na ten moment dokładnie 36 pozycji, a pierwotnie lista ta była dużo dłuższa.

Gdy tylko RunUO oraz ServUO będzie “zsynchronizowane” chcemy ponownie zsynchronizować również sejwy, czyli zapisy całego świata, aby dało się łatwiej migrować wszelkie zmiany na nowy silnik.

Dodatkowo czeka nas synchronizacja nowości z ServUO i tutaj też znajduje się jakieś kilkanaście zmian, jednak te zmiany jesteśmy w stanie wprowadzać praktycznie automatycznie.

Udało nam się dołożyć cegiełkę do naszego centrum sterowania serwerem i już teraz możemy zdalnie zarządzać serwerem do edycji mapy, a w fazie testów jest zarządzanie RunUO/ServUO przez przeglądarkę, z użyciem kliknięć myszą.

Apropo edycji mapy, ostatnio pozyskaliśmy umiejętność programowania w dość wiekowym języku pascal i przygotowaliśmy sobie usprawnioną wersję klienta do edycji mapy CentrED, który jak na razie “mniej crashuje”.

Jeszcze w temacie narzędzi, usprawniliśmy sobie również edytor regionów, żeby praca w nim była trochę mniej uciążliwa 😀

Czy to testy zmian na ServUO? Nie! To Chuck Test-a

Tak, wiem, że to żart z memu sprzed epoki piksela łupanego w kopalni w Ethrod, ale to co się stało przy ostatnich testach, to nie są żarty.

Tuż po zalogowaniu na serwer testowy, okazało się, że nie da się nic przetestować, gdyż mieliśmy ogromne lagi. Ping sięgał czasem 3000ms:

Przykład pingu u Levego
Przykład pingu u Kaczego, u którego stoi serwer testowy

Na lagach się nie skończyło. Parę razy serwer postanowił popełnić cyfrowe harakiri:

Po około 20-30 minutach walki z naprawianiem serwera, Kaczy zdołał postawić go na nogi, tak, że dało się zalogować, jednakże lagi nie ustąpiły. Udało się wyłączyć wszelkie niepotrzebne testowe spawnery i pójść na przetestować Przywołańce Nekromanckie na potworach. Niestety, to również się nie udało, ponieważ lagi powodowały, że nie da się leczyć, aby nie paść po kilku sekundach.

Nasze zdziwienie, że po tym screenie był widoczny szary świat, który zgotował nam demon nadchodzący z innej komnaty, było wymalowane na naszych twarzach. Szczególnie u Kaczego

Na tym etapie zdecydowaliśmy potestować samo tworzenie przywołańców w miejscu, gdzie nie ma potworów, a w akcji sprawdziliśmy je już na RunUO. Na tym nasze testy się zakończyły.

Próba ponowiona parę dni później

Do tej pory nie udało nam się znaleźć całkowitego rozwiązania problemu, jednakże, mamy nadzieję uporać się z tym jeszcze w grudniu i przetestować kolejne systemy w roku 2022.

Co nowego przynosi ServUO

Kto puścił farbę?!

Lubicie farbować ciuszki, prawda? To świetnie się składa, bo patch Stygian Abyss pozwala nam teraz tworzyć własne farbki.

Ten system dodany umożliwia ogrodnikom, kucharzom i alchemikom przekształcanie uprawianych przez graczy roślin i zbieranych jagód w naturalne barwniki. Te przedmioty są materiałami eksploatacyjnymi z ograniczonymi ładunkami.

Aby stworzyć użyteczne barwniki, gracz będzie musiał:

Gracze z umiejętnością Gotowanie lub Alchemia na poziomie co najmniej 75 potrzebują najpierw następujących przedmiotów do wykonania pigmentów:

  • Nożyce ogrodnika (wykonana przez majsterkowiczów)
  • Rośliny ozdobne
  • Pusta butelka
  • Moździerz lub patelnia

Gracze muszą ciąć rośliny ozdobne na małe kawałki za pomocą nożyc ogrodnika. Powstałe wycinki roślin zostaną umieszczone w plecaku gracza i zabarwione na ten sam kolor, co roślina ozdobna, z której pochodzą. Następnie zmiel to co wyciąłeś (w moździerzu) lub ugotuj je na patelni. Jeśli się powiedzie, pusta butelka zostanie zużyta, a butelka z pigmentem zostanie umieszczona w plecaku gracza i zabarwiona na ten sam kolor, co roślina, z której wyekstrahowano pigment.

Nożyce ogrodnika będą miały 3 opcje w menu kontekstowym, podobnie jak w przypadku łopat, gdzie gracze będą mogli określić, w jaki sposób chcą ścinać swoje rośliny:

  • Zestaw do cięcia trzciny. (do wyplatania koszy)
  • Zestaw do przycinania roślin. (do tworzenia pigmentów)
  • Zestaw do cięcia topiary. (aby stworzyć topiary)

Pigmenty bazowe i mieszanki

Domyślnie gracze mogą pozyskiwać pigmenty w 19 różnych kolorach bezpośrednio z roślin:

  • Zwykły kolor, czarno-białe zmutowane rośliny
  • 6 podstawowych kolorów (żółty, zielony, niebieski, fioletowy, czerwony, pomarańczowy)
  • 6 jasnych wersji 6 podstawowych kolorów
  • 4 rzadkie kolory z poszukiwań przyrodników (Quest może nazywać się inaczej w finalnej wersji Nelderim ServUO)

Dla wszystkich powyższych (z wyjątkiem zwykłych nasion) bezpośrednie dodanie utrwalacza koloru do tych pigmentów da barwnik o pasującym kolorze. W przypadku zwykłych nasion da bardzo jasny szarawy odcień. Mieszanie zwykłych pigmentów z normalnymi pigmentami zmieni je w pasujący jasny pigment.

Alchemicy lub Kucharze z umiejętnością równią 100 mogą uzyskać dodatkowe 16 nowych odcieni. Użycie czarnych lub białych barwników na dowolnych normalnych lub jasnych pigmentach roślinnych da unikalną nową, ciemniejszą lub jaśniejszą wersję tego odcienia. Powstałych odcieni nie można już mieszać. Gracze mogą mieszać normalne i jasne pigmenty, aby uzyskać inny kolor. Na poniższym zdjęciu górny rząd ma normalny i jasny kolor, dolny rząd jest zmieszany z bielą i zmieszany z czernią.

4 rzadkie kolory roślin z poszukiwań przyrodników (aqua, magenta, purple i fire) można również zamienić na pigmenty, ale nie można ich mieszać, a jedynie tworzyć barwniki. Mieszanie zwykłego pigmentu z dowolnymi innymi kolorami zawsze daje jasną wersję drugiego koloru.

Utrwalacz koloru

Wymagają one umiejętności gotowania lub alchemii na poziomie 75+. Wymagane składniki:

  • 1 fiolka jadu srebrnego węża
  • 1 butelka wina (od dostawców NPC)

Użycie jadu pozyskanego ze srebrnych węży (użyj fiolki z jadem na srebrnym wężu, aby zebrać jad srebrnego węża) i zmieszanie go z winem stworzy utrwalacz koloru. Następnie na pigment należy zastosować utrwalacz, zanim będzie można go użyć jako barwników.

Informacje zostały przetłumaczone ze strony UOguide i finalnie mogą one się różnić od tego co zastaniecie na Nelderim.

Podsumowanie

Możemy już nagrywać ekran w całkiem niezłej jakości, abyście byli na bieżąco z eventami mającymi miejsce jeszcze na RunUO, próbujemy poprawić stabilność ServUO. Innymi słowy cały czas do przodu, jak to mawiał pewien piłkarz (tak polecę piłkarską puentą, bo mamy mundial przecież ;] ).

Dzięki, że dotarłeś do końca tej ściany tekstu. Pozdrawiamy i widzimy się tu za 2 tygodnie!

Read More

Nelderim DevBlog #21

Kolejny piątek i kolejny DevBlog dla Was. Co słychać na froncie?

Przez ostatnie dwa tygodnie wiele naszego wolnego czasu zostało pochłonięte przez prace nad bieżącą wersją gry. Spotkaliśmy się również w gronie ekipy na omówienie kilku kwestii dalszego zamysłu rozwoju prac. Omówiliśmy na nowo system frakcji, zdradzić możemy, że przybierze on wymiar podobny do Order VS Chaos. Do tego skupiliśmy się na poprawkach i naprawie systemu tworzenia przywołańców nekromanty, ale o tym więcej poniżej.

Zapraszamy do lektury!

System czasu

Czas płynie nieubłaganie i na serwerze jest to nieodłączny element wielu aspektów naszego świata.

System czasu definiuje naturalne oświetlenie terenów na powierzchni, cykliczne pory roku, daje punkt odniesienia we wszelkich kronikach i historiach, także umożliwia nam i wam synchronizacje wszelkiego rodzaju wydarzeń, spotkań czy wypraw.

Wiedzieliśmy zatem, że chcemy aby nasz autorski system czasu, który jest z nami od pierwszej odsłony Nelderim, był z nami również na ServUO, jednakże spotkały nas pewne problemy.

System czasu wymagał od nas dodatkowej pracy, ponieważ wprowadzał wiele zmian w kodzie serwera, a dodatkowo kod był przestarzały, bez dokumentacji, strasznie pokrętny, a dodatkowo posiadał kilka błędów.

Długi czas odkładaliśmy na potem rozwiązanie kwestii czasu na Nelderim, ze względu na poziom skomplikowania tego systemu, aż w końcu zakasaliśmy rękawy i wykonaliśmy całkowity przegląd tego systemu.

Przejrzeliśmy dokładnie każdy kawałek kodu, odświeżyliśmy wszystko co dało się zrobić lepiej, uprościliśmy kod w wielu miejscach, dodaliśmy dokumentację do funkcji matematycznych, ograniczyliśmy zmiany w oryginalnym kodzie serwera do absolutnego minimum i przy okazji namierzyliśmy i naprawiliśmy kilka błędów.

Przy okazji zrozumieliśmy całkowicie działanie systemu czasu i odkryliśmy, że świat Nelderim posiada dwa księżyce, a cykle księżyca wpływają na to jak ciemne są noce w grze 😀

Wizualizacja niepoprawnej funkcji natężenia światła zależnie od godziny czasu serwera.

Wspomniane błędy mogłyby się wydawać mało istotne, ponieważ dotyczyły jedynie natężenia światła zależnie od godziny, ale w związku, że na ServUO planujemy trochę więcej uwagi poświęcić grze świateł, to szybko się z tym uporaliśmy.

Samoistnie naprawił się również problem z niedziałającymi porami roku, o którym pisaliśmy w jednym z pierwszych DevBlogów 🙂

Tworzenie przywołańców nekromanckich

Już informowaliśmy was o tym temacie, ale w DevBlogu staramy się zawierać wszystko co robimy, więc napiszemy jeszcze raz 🙂

System tworzenia przywołańców nekromanckich jest już z nami od pewnego czasu, lecz do tej pory był traktowany raczej po macoszemu i nie był zbytnio popularny.

Działanie systemu jest proste:

  1. Zabijamy nieumarłych, żeby zdobyć ich proch
  2. Rozkopujemy groby, żeby pozyskać części ciała
  3. Kupujemy wymagane narzedzie: Skalpel
  4. Przy pomocy skalpela wytwarzamy kryształ danego nieumarłego oraz niezbędne “części”
  5. Używamy kryształu i tworzymy w ten sposób posłusznego nam nieumarłego

Wytworzone nieumarłe są czymś pomiędzy oswojnym zwierzęciem, a magicznym przywołańcem, a najważniejsze kwestie są następujące:

  1. Nie można uwiernić przywołańca
  2. Nie trzeba karmić przywołańca i nigdy nam samoistnie nie zniknie.
  3. Nie można przechowywać przywołańców w stajni
  4. Można rozłożyć przywołańca na poszczególne części z wykorzystaniem skalpela
  5. Obecnie leczyć można przywołańca jedynie magią, ale planujemy dać dodatkową możliwość leczenia
  6. Nie można przekazać przywołańca komuś innemu
  7. Żeby stworzyć przywołańca należy mieć wymagany poziom umiejętności Nekromancja, natomiast nie ma żadnych wymagań, aby istota nas słuchała

System pochodzi oryginalnie z gotowej paczki skryptów, natomiast został on całkowicie przepisany, uporządkowany oraz dostosowany do naszego świata i jest kompatybilny z ServUO.

Wraz z tym systemem, w świecie Nelderim pojawi się już niedługo nowy rodzaj potwora: Kościej, potężny nieumarły walczący w zwarciu, którego również będzie można wytworzyć.

Co nowego przynosi ServUO

Talizmany, talizmany – aktualny temat jeśli chodzi o bieżące sprawy na Nelderim. Ponieważ już teraz będzie możliwość używania części z nich. Mianowicie najnowszy patch, który będzie dostępny na ServUO wprowadza wiele różnych talizmanów, które różnią się od tych, jakie znamy w świecie Nelderim. Obecnie jedyne talizmany jakie możemy pozyskać dostępne są ze zleceń myśliwskich i były stworzone specjalnie do wypełnienia systemu nagród. ServUO wprowadza bardziej zróżnicowane propsy na talizmanach.

Crafting Bonus – bonus do umiejętności rzemieślniczych oraz szansy na wykonanie wyjątkowej jakości przedmiotu. Bonus ten nie jest realny, a jedynie daje szansę na wykonanie przedmiotu taką, jaką mielibyśmy na poziomie z bonusem. Natomiast jeśli “na czysto”, podstawowym skillem nie jesteśmy w stanie wytworzyć przedmiotu, to bonus nam nie pomoże. Bonus do wyjątkowej jakości natomiast dodaje się z podstawową szansą.

Talizman posiadający bonus 20% kartografii


Przykład: Posiadamy 100% na wykonanie przedmiotu i 40% na wykonanie go wyjątkowej jakości. Zakładamy talizman który posiada bonus 20% do wyjątkowej jakości, dzięki czemu posiadamy już 60%.
Talizmany takie mogą występowac z obydwojgiem propsów o losowym natężeniu. Te talizmany będą dostępne na obecnym serwerze juz niebawem.

Slayers, Killers, & Protections – to grupy propsów, które również możemy wylosować na talizmanach. Slayery czyli znane z broni i ksiąg czarów pogromcy podwajają zadawane obrażenia dla danych grup stworów lecz posiadają zupełnie nowe pule (dokładne stworzenia, którym zadają obrażenia dostępne w linkach):

Talizman posiadający pogromcę ptaków (bird slayer)

Killers – To grupa propsów podobna do pogromców (slayerów) zwiększają obrażenia zadawane danemu typowi stworzeń i mieszczą się w zakresie 1-100%. Właściwość obrażeń od tego propsa kumuluje się z obrażeniami pogromcy, z zastrzeżeniem ograniczenia wzrostu obrażeń do 300% Dostępne są następujące warianty:

  • Ancient Lich
  • Beetle
  • Bird
  • Bull
  • Chicken
  • Cow
  • Crane
  • Deathwatch Beetle
  • Deathwatch Beetle Hatchling
  • Deep Sea Serpent
  • Desert Ostard
  • Dread Spider
  • Eagle
  • Evil Mage
  • Evil Mage Lord
  • Fire Beetle
  • Fire Elemental
  • Fire Steed
  • Forest Ostard
  • Frenzied Ostard
  • Frost Ooze
  • Frost Spider
  • Frost Troll
  • Gaman
  • Giant Ice Worm
  • Giant Rat
  • Giant Spider
  • Giant Black Widow
  • Giant Serpent
  • Hell Cat
  • Hell Hound
  • Ice Elemental
  • Ice Fiend
  • Ice Snake
  • Ice Serpent
  • Juka Mage
  • Khaldun Zealot
  • Lady Of The Snow
  • Lava Lizard
  • Lava Serpent
  • Lava Snake
  • Lich
  • Lich Lord
  • Meer Mage
  • Meraktus
  • Minotaur
  • Mongbat
  • Orc Bomber
  • Orc Brute
  • Phoenix
  • Predator Hell Cat
  • Rat
  • Ratman
  • Ratman Archer
  • Rune Beetle
  • Sewerrat
  • Silver Serpent
  • Skeletal Mage
  • Snake
  • Snow Elemental
  • Snow Leopard
  • Strong Mongbat
  • Tormented Minotaur
  • Tropical Bird
  • Vampire Bat
  • Yamandon

Protections – props ten działa w odwrotny sposób jak Killers, dla tych samych stworzeń powoduje zmniejszenie obrażeń od 1 do 100% od danego stwora.

Talizman posiadający protekcję 8% na żywiołaki ognia

Status Removal – props ten występuje niezależnie od innych propsów talizmanu i może ujawnić się w jego nazwie. Talizmany te maja swoje użycia, które można ładować. Użycie go wykonuje jedną z poniższych czynności:

  • Curse Removal – Usuwa klątwy z wskazanego celu, podobnie jak czar z rycerstwa
  • Damage Removal – Usuwa efekty umiejętności specjalnych broni jak krwawienie czy śmiertelne uderzenie
  • Ward Removal – Może zostać użyte na wskazanym celu by ściągnął wspierające efekty jak protekcja czy forma wampira
  • Wildfire Removal – Niweluje efekt czaru wildfire z druidyzmu.
Talizman usuwający klątwę

Summoning – tak samo jak props status removal występuje w nazwie i niezależnie od innych propsów. Mogą przywoływać niewielką ilość – 10 sztuk – bandaży, desek lub sztab raz na 60 sekund lub przywoływać stworzenia, które nie maja żadnych funkcji bojowych, jedynie ozdobne. Przyzwać można zależnie od propsa jeden z typów mobów:

Talizmany z kolekcji biblioteki Britanii – Są to talizmany dostępne do wymiany za punkty, w oryginalnej mechanice, punkty zdobywa się wykonując zadanie z questa. Nie mamy jeszcze pewności co do zastosowania tej mechaniki, ale możliwe, że talizmany dostępne będą do zebrania w inny sposób, na przykład ze zleceń myśliwskich.

Poniżej lista wraz z linkami:

Smelter’s Talisman – Talizmany te służą do przepalania rud najwyższych poziomów dając stuprocentową szansę na powodzenia. Na Nelderim istnieją rękawice górnicze, które pełnią role tych talizmanów, zwiększając szansę na przepalenie rudy poprzec dodanie umiejętności.


Przykład: Posiadamy 99 górnictwa, próbując przetopić valoryt mamy bardzo niewielką szansę na powodzenie. Zakładając rękawice +10% górnictwa, otrzymujemy szansę na przetopienie jak na poziomie 109% górnictwa ale nie realny skill. Nie ma pewności co do zastosowania tych talizmanów, a jeśli zostana wprowadzone to prawdopodobnie wycofamy rękawice górnicze a wyższym poziomie umiejętności niż +10 górnictwa, tak jak jest to na OSI. Poniżej lista dostepnych talizmanów:

Pozostałe – są to talizmany z różnymi propsami do zdobycia z bossów, questów oraz eventów z oryginalnej mechaniki OSI:

UWAGA!
Nie znamy jeszcze dokładnego rozlokowania talizmanów, z czego będą do zdobycia oraz końcowych wartości ich propsów, wszystko co powyżej jest przedstawieniem jak działa to na oryginalnym serwerze Ultimy Online i może różnić się na Nelderim.

Resztę informacji odnośnie Talizmanów znajdziecie tutaj:
https://uodemiseguide.spokland.com/item/talisman
https://www.uoguide.com/Talismans

Podsumowanie

Sporo się działo przez ostatnio dwa tygodnie, a oprócz tego wszystkiego, mamy już rozpoczęte kolejne tematy, o których opowiemy wam w następnej części DevBloga.

Jak zawsze, dajcie nam znać na Discordzie co sądzicie o tych zmianach!

Do następnego!

Read More

Nelderim DevBlog #20

Witamy was w okrągłej, dwudziestej części naszego DevBloga.

Nowe narzędzia w ekipie

Zmiana systemu operacyjnego serwera na system linux wiązała się z wieloma zaletami takimi jak niższe koszty, lepsza wydajność, lepsza kontrola nad serwerem i ogólnie większe możliwości, jednakże od momentu przesiadki ciągnął się za nami jeden malutki problem…

Otóż system linux i dostęp do serwera głównie z użyciem wiersza poleceń, okazały się być barierą wręcz nie do przejścia dla nietechnicznych członków ekipy, a niektórzy do tej pory na myśl o czarnym okienku z literkami dostają dreszczy oraz zawrotów głowy.

Utrudniony dostęp do serwera powodował, że wszelkie akcje utrzymaniowe typu restart, czy aktualizacje plików, musiały być organizowane, kiedy nieustraszeni komputerowcy mieli trochę czasu.

Wyszliśmy zatem naprzeciw problemowi i wyposażyliśmy nasz serwer w nowe narzędzie, które umożliwia nam wykonywanie wszelkich operacji serwerowych z użyciem wyłącznie przeglądarki internetowej.

Pozwala to na wykonywanie operacji serwerowych wszystkim członkom ekipy, a dodatkowo potrzebujemy jedynie urządzenia z dostępem do internetu żeby w razie potrzeby zareagować na jakiś problem.

Narzędzie to aktualnie dokładnie testujemy na osobnej maszynie, ale już niedługo planujemy zacząć go używać na docelowym serwerze i nasze życie stanie się prostsze.

Postępy w systemie frakcji

Powoli, ale w stałym tempie, kształtujemy kod systemu frakcji i jeszcze spory kawałek drogi, zanim wszystko będzie działać tak jak chcemy.

Ostatnio pisaliśmy, że mamy działający zalążek systemu, a w tym tygodniu domykamy integrację z systemami regionów, domów, i wszelkich interakcji z NPC.

Na tak wczesnym etapie, większość naszego czasu poświęcamy tak na prawdę na samo opracowywanie wszelkich aspektów tego systemu, ale z biegiem czasu powinniśmy zacząć nabierać rozpędu i kod powinien coraz częściej pojawiać się w repozytorium.

W najbliższych tygodniach czekają nas prawdopodobnie testy w większym gronie, ale co będzie w następnych tygodniach to będziemy pisać innym razem 😉

Doom doom-doom, du-du du-du du-du du-du duuu-dooom…

Ahh ten nasz ukochany Doom. Każdy pożąda artefaktów, które można tam pozyskać, ale myślę, że możemy z ręką na sercu przyznać, że to najnudniejsza część PvM w Ulitmie.

Na chwilę obecną, łapanie artefaktów w Doomie wygląda tak: idziesz na bossy, zabijasz bossy i masz 1.5% szansy na artefakt z pomniejszych bossów i 5% na artefakt z DF’a. Robisz te kółka, aż do momentu, gdy nienawidzisz samego siebie za zrobienie więcej kółek, niż łysy patol w BMW na parkingu pod Lidlem, gdy tylko spadnie pierwszy śnieg.

“O, szczęście niepojęte…” ServUO przychodzi z pomocą. System “farmienia” artefaktów w tym lochu zmienił się. Publish 48 zawiera najnowsze zmiany w tym systemie dropów. Gracze gromadzą teraz punkty. Każdy zabity boss, któremu zadasz wymaganą ilość obrażeń, przyzna ci punkty. Gdy zdobędziesz więcej punktów, twoje szanse na uzyskanie artefaktu rosną. Im więcej obrażeń zadasz, tym zdobędziesz więcej punktów. Posiadane szczęście zwiększa dodatkowo ilość otrzymywanych punktów.

W końcu otrzymasz jeden z możliwych artefaktów i zostanie on umieszczony w twoim plecaku (lub skrzynce bankowej, jeśli nie masz już miejsca w plecaku) wraz z komunikatem systemowym o treści „Za twoje męstwo w walce z upadłym stworzeniem został ci podarowany specjalny artefakt”.

Dalsze upiększanie mapy

Wraz z podziałem graczy na frakcje, musimy się również upewnić, że NPC, którzy uczą poszczególnych umiejętności będą dostępni przez graczy zamieszkujących dany region i będą w zasięgu każdego, nawet kogoś, kto gra postacią, która jeszcze nie jest zbytnio wyszkolona.

Przykład mamy tutaj – budynek dla NPC Nekromanta, który został postawiony obok cmentarza w pobliżu miasta

Oprócz budynków funkcjonalnych, staramy się dodać pewne elementy wizualne do już istniejących gołych przestrzeni na mapie.

Przykładowy ołtarzyk z ogrodem

Pewne już istniejące obszary mapy zostaną przebudowane w celu zmniejszenia obszarów miast, które są nieużywane lub zostały uznane za zbyt duże na potencjalny online.

Przykład tutaj – brama Orod znika na naszych oczach

Podsumowanie

I to wszystko co przygotowaliśmy dla was w tym tygodniu.

Do następnego!

Read More

Nelderim DevBlog #19

Witajcie podróżnicy w kolejnym wydaniu DevBloga.

Ten wpis rozpoczynamy od czegoś o czym jeszcze nigdy nawet nie wspominaliśmy i czekaliśmy na odpowiedni moment, żeby się wami z tym podzielić!

Rebranding

Dzisiaj wszystko co jest i będzie związane z naszym serwerem będzie sygnowane naszym nowym logo, które prezentuje się następująco!

Przez bardzo długi czas nie mieliśmy spójnej tożsamości naszego serwera i na różnych profilach społecznościowych używaliśmy różnych logo i logotypów z poprzednich odsłon serwera, a na naszej stronie internetowej widnieje nasze logo, ale dostaliśmy sporo opinii, że należałoby coś z nim zrobić 😉

I tak oto przychodzimy do was z powiewem świeżości.

Proste, unikatowe logo, które nawet pięciolatek będzie w stanie narysować i mamy nadzieję, że już niedługo każdy będzie kojarzył ten symbol z naszym serwerem 🙂

Banki Regionalne

Ci którzy są aktywni na Discord, już wiedzą, że planujemy wprowadzić system banków regionalnych.

Ma to działać tak:

Załozenia:

  • Kazda postac ma osobne skrzynie bankowe per region (region moze oznaczac jakis geograficzny region, miasto, wioske albo nawet konkretny budynek banku)
    • Wrzucając przedmioty w skrzyni bankowej w lokacji x, nie sa one dostepne w bankach w innych lokacjach
    • Zloto i waluty rowniez mozna zrobic regionalne, albo utrzymywac jedno saldo we wszystkich instancjach banku
    • Mozliwosc wykupienia uslugi transportu dóbr z jednego banku do drugiego
    • Przyklady uzycia:
      • Jestes kowalem z miasta x i chcesz sprzedac swoje towary w miescie y, to musisz je dostarczyc do miasta docelowego, nie mozesz schowac do banku w miescie x i wyciagnac z banku w miescie y
      • Chcesz cos kupic w miescie x, to musisz miec zloto albo w plecaku albo w banku w miescie x
      • Mozliwosc przewozenie walut w czekach, surowców i materiałow w wekslach

Wspominaliśmy też, że mamy gotowy system, który tylko należy dostosować, natomiast po rozpakowaniu archiwum system ten okazał się kilkoma totalnie bezużytecznymi skryptami bez ładu i składu, tak więc system ten będzie jednak wymagał od nas trochę pracy 😉

Poznaliśmy też waszą opinię w dyskusji na Discord i niedługo rozpoczniemy właściwe kroki w stronę implementacji tego systemu.

Co nowego przynosi ServUO

Dodatki, które mamy na ServUO mogą spełnić najbardziej mokry sen każdego poszukiwacza przygód, dzikusa czy barbarzyńcy – zbroja ze skóry tygrysa. Tak! Po roku 2010 wprowadzono do obiegu nowe potwory, ale nie mogło zabraknąć też kolejnej gratki dla tych graczy, którzy cenią sobie więcej, niż tylko cyferki w panelu statusu, mianowicie, szyk i elegancję…, no a w tym wypadku, to raczej szok i ekscytację.

Nowy potwór

A jak nowy potwór to i nowe skóry:

Przy wytwarzaniu takowej zbroi z wykorzystaniem umiejętności Krawiectwo, możemy też użyć kolorowych skór, aby nadać temu strojowi nie tylko ciekawego odcieniu, ale i tych upragnionych cyferek, które w MMORPG tak namiętnie gonimy.

Zbroja z futra tygrysa w swojej okazałości

Więcej o nich można poczytać tutaj

Więcej zmian i fixów

Nowe systemy wymagają przetłumaczenia, więc lwią część czasu zajmuje nam ostatnio tłumaczenie nazw w tych nowościach. Jest to o tyle uciążliwe, iż część tekstu jest w kodzie, a część w Cliloc.enu, co powoduje, że w celu weryfikacji tłumaczeń, musimy podmieniać plik i restartować grę/serwer.

Tłumaczone również były komendy stajennego. Na ServUO większość komend znajduje się w pliku Speech, który znajduje się w folderze z klientem, więc musieliśmy zanurkować w ten plik i przenieść komendy z RunUO na ServUO. Tym razem zajmowialiśmy się komendami u teresera zwierząt.

Praca z tym plikiem nie należy do najprzyjemniejszych

W systemie skrzyń skarbów, które wykopujemy, kiedy posiadamy mapy skarbów, na ServUO, strażnicy mają nadany odpowiedni kolor i nazwę. Oryginalne hues.mul powodowało, że straznicy byli w kolorze kruczoczarnym. Już, na szczęście, nie nazywają się tak jak oryginalnie nazywał się potworek i nie mają czarnego koloru. Na nowym emulatorze mają dopisek (Strażnik).

A taki kolor mają potwory ze skrzyń

Podsumowanie

Koniecznie dajcie nam znać co sądzicie o naszym nowym logo i zacznijcie się przyzwyczajać, bo prędko nie planujemy go zmieniać!

Jak znacie jakichś pięciolatków, to możecie zrobić eksperyment czy dadzą radę je narysować 😉

Do następnego!

Read More

Nelderim DevBlog #18

Kolejny piątkowy wieczór, na zewnątrz coraz zimniej, a my sumiennie dostarczamy wam świeżą porcję postępów w migracji.

Frakcje

Zgodnie z zapowiedzią rozpoczęliśmy implementację naszego systemu frakcji i udało nam się poczynić widoczne postępy

Podstawy systemu są na miejscu, dodaliśmy w kodzie definicje dla czterech frakcji: Frakcja1, Frakcja2, KompaniaHandlowa oraz VoxPopuli, z czego dla graczy domyślnie będą dostępne tylko Frakcja1 i Frakcja2, które jeszcze nie mają właściwych nazw 🙂

Aktualnie udało nam się zaimplementować wyświetlanie przypisanej frakcji w paperdollu, możliwość definicji wrogich frakcji, których członkowie będą oznaczanie w grze jako Enemy (domyślnie kolor pomarańczowy) oraz częściowo konto działa “przypisywanie frakcji do konta” i od razu chcemy dodać, że przypisanie to będzie nam dość łatwo wyłączyć, a dodatkowo z pomocą Mistrza Gry będzie istnieć możliwość przypisania konkretnej postaci do dowolnej frakcji, nawet domyślnie nie grywalnej, jeżeli pojawi się taka potrzeba.

Postać z wrogiej frakcji wyświetlana jako Enemy

Jak na razie to wszystko co udało nam się zrobić, ale mamy już zaplanowane kolejne kroki, a musicie uwierzyć że ilość systemów które musimy zintegrować z systemem frakcji jest ogromna i minie trochę czasu, zanim wszystko zacznie działać jak należy.

“Konsekwencjo, tyś wielką cnotą!”

No właśnie… cnoty. O cnotach mawia się wiele. Wielu twórców o nich pisało. “Zwątpiwszy w miłość i cnotę, zostaje jeszcze rozpusta.“, mówił Albert Camus, “Cnota jest w dzisiejszych czasach rzadsza niż skalny smok.“, pisał Andrzej Sapkowski, ale my tu nie o takich cnotach będziemy mówić.

Panel cnót

Dzięki silnikowi ServUO mamy dostęp do całej gamy cnót, nie tylko do 5 (Valor, Honor, Compassion, Justice, Sacrafice), tak jak to jest na RunUO. Poniżej opiszemy działanie tych nowych, czyli (Honesty, Spirituality, Humility), które wejdą wraz ze startem Nelderim ServUO.

Honesty (Szczerość) – tę cnotę zdobywamy poprzez zbieranie i zwracanie przedmiotów z opisem “Zagubiony Przedmiot (Zwróć, aby pozyskać punkty Szczerości)”. Przedmioty te mogą pojawić się na całej mapie z pominięciem lochów. Podnosząc taki przedmiot mamy 3 godziny czasu rzeczywistego, by odnaleźć jego właściciela, który będzie znajdował się w mieście. Nasza wersja Honesty będzie troszeczkę zmieniona względem tej OSI ze względu na fabułę i mapę. O oryginalnej wersji można poczytać TUTAJ. Ta cnota daje nam zniżki na przedmioty u NPCów.

Humility (Pokora) – Na OSI Pokora zdobywana jest poprzez zabijanie stworzeń podczas Humility Hunt. Nie mamy jeszcze jasno określonego jaki kształt ona nabierze u nas.

Spirituality (Duchowość) – Duchowość zdobywa się, stosując ukierunkowane leczenie i zmartwychwstania na innych graczach, w tym bandaże, Close Wounds (Rycerstwo) , Heal, Greater Heal (Magia) , Gift of Renewal (Druidyzm), Cleansing Winds (Mistycyzm) i Rejuvenate (Talenty Barda). Jako nagrodę otrzymujemy możliwość rzucenia na gracza tarczy, która absorbuje obrażenia. Przy pierwszym poziomie cnoty 5% tarczy z 50 HP, przy 2 poziomie 10% tarczy ze 100 HP, przy 3 mamy 20% tarczy z 200 HP. Rzucanie tarczy zużywa punkty cnoty.

Dekoracje

Dekorowanie miast i wiosek trwa dalej. Prace nam się rozpraszają na różne lokacje, więc to jeden z większych części przeniesienia Nelderimu na ServUO. Chcemy trochę udekorować pewne miejsca, jako, że wydają się dość surowe jak na ten czas. Inne zaś mamy zamiar przebudowywać. Jeszcze inne miejsca dopiero mają powstać, więc jest na co czekać 🙂

Poniżej przykład z dekorowania jednego z budynków:

Podsumowanie

Wrzało ostatnio na naszym Discordzie po ogłoszeniu systemu frakcji i zapewniamy was, że słuchamy waszych sugestii, bierzemy pod uwagę wszelkie oznaki niepokoju co do wprowadzanych zmian i dokładamy wszelkich starań, żeby wszyscy byli co najmniej trochę zadowoleni 😀

Do następnego!

Read More

Nelderim DevBlog #17

Witamy was po raz siedemnasty na łamach naszego DevBloga!

Okres wakacyjny dobiega (nareszcie) końca i w momencie pisania tego akapitu prawie cała ekipa jest już dostępna, i możemy wypoczęci wrócić do prac przy migracji.

Przez ostatnie dwa tygodnie udało nam się osiągnąć malutki kamień milowy, ponieważ niejako przymykamy jeden z większych tematów i rozpoczynamy pracę nad czymś nowym, ale po kolei…

Gainy

Przez ostatnie dwa tygodnie większość naszych sił przeznaczyliśmy na domykanie wstępnych modyfikacji systemu gainów zgodnie z naszą wizją i zbliżamy się powoli do momentu gdzie będziemy zadowoleni z tego jak funkcjonuje ten system.

Na początek wprowadziliśmy zmiany zgodnie z wnioskami, które wyciągnęliśmy po testach opisanych w ostatnim DevBlogu i przystąpiliśmy do kolejnej sesji testów.

Dotychczasowe sesje testowe są dość proste: obserwujemy prędkość gainów, modyfikujemy globalny modyfikator przyrostów i ponownie obserwujemy czy jest lepiej czy gorzej.

Jak na razie są to tylko początkowe ustalenia prędkości przyrostów, a wszystkie szczegóły i drobnostki, takie jak modyfikatory dla poszczególnych umiejętności, wpływ zapełnienia całkowitego limitu umiejętności na przyrosty, przyrosty umiejętności oraz inne będziemy dopieszczać na bieżąco, aż do końca migracji i jeszcze dłużej, ale to co mamy aktualnie, wystarczy aby rozpocząć następne tematy 🙂

Frakcje

System frakcji jest czymś, co wiedzieliśmy że chcemy mieć prawie od samego początku migracji i nareszcie nadeszła pora, kiedy możemy poczynić korki w tym kierunku.

Nie będzie to system frakcji znany z dawnej ery UO, ani tez VvV istniejące aktualnie, ale główne założenie będzie bardzo podobne: zachęcić graczy do PvP oraz urozmaicić rozgrywkę i świat.

Warto też nadmienić, że jak na razie, wszystko odnośnie naszego systemu frakcji jest tylko na papierze, a faktyczna implementacja tego systemu dopiero się rozpoczyna i jesteśmy otwarci na wasze uwagi oraz sugestie 🙂

Jak na razie jest kilka ogólnych założeń:

  • Świat zostaje podzielony na dwie walczące między sobą frakcje
  • Każdy gracz musi przynależeć do jednej ze stron
  • Przynależność do frakcji jest na poziomie konta, tzn. wszystkie postacie należą do jednej frakcji
  • Każda frakcja posiada swoje miasta, wioski oraz terytorium
  • Będą istnieć również miasta/tereny neutralne, albo należące do fabularnej/niegrywalnej frakcji
  • Gracze frakcji x mogą bezkarnie atakować graczy frakcji y
  • Gracze frakcji x atakujący graczy x będą działać na oryginalnych zasadach blue/crim/red
  • Npc frakcji x będa nietolerancyjni dla graczy frakcji y
  • Straż frakcji x będzie automatycznie atakować graczy frakcji y
  • Zabijanie graczy wrogiej frakcji będzie nagradzane 🙂

Dajcie znać co sądzicie na temat nowego systemu frakcji, bo mamy świadomość, że może budzić pewne kontrowersje, ale zapewniamy was, że mamy wszystko dobrze przemyślane i każdy powinien być zadowolony z tego rozwiązania 🙂

Co nowego przynosi ServUO

Charybdis to potwór morski, którego można przywołać za pomocą specjalnej lunety zwanej Wyrocznią Morską (Oracle of the Sea) oraz specjalnej przynęty na ryby. Wezwanie jest ograniczone do raz na siedem godzin. Chociaż Wyrocznia może wygenerować nową raz na 24 godziny, tylko wtedy, gdy poprzednia nie zostanie wezwana.

Aby zostać podniesionym z głębin, osoba ze 100 punktami umiejętności Wędkarstwo musi trzymać zarówno Wyrocznię Morza, jak i wędkę z przynętą na Charybdis… próba łowienia samą Przynętą nie wygeneruje “bąbelków”, a co za tym idzie, boss nie zostanie przyzwany.

Istnieje 1 na 4 szanse na przywołanie Charydbisa na poziomie 100 Wędkarstwa (lub wyższym), gdy wszystkie warunki zostaną poprawnie spełnione.

Podsumowanie

Dotarliśmy do końca dzisiejszego wpisu i już nie możemy się doczekać następnego i nadchodzących zmian!

Do następnego!

Read More

Nelderim DevBlog #16

Jako, że nadal trwa okres urlopowo-remontowy, to dzisiejszy DevBlog będzie mniej obszerny od pozostałych. Niemniej jednak, zachęcamy do zapoznania się z tym, co dzieje się za kulisami 😉

Miłego czytania!

Dem gainz!

W DevBlog#15 mogliście przeczytać, że stworzyliśmy system mnożników przyrostów, które można wykorzystać globalnie, jak i indywidualnie. W ostatnich dniach, gdy nasz czołowy skrypter – Kaczy – był na zasłużonym urlopie, reszta ekipy starała się wziąć pod lupę owy system.

Pierwsza faza testów pokazała, iż wpływ GainBoostera oraz innych mechanik zwiększających przyrosty, musi zostać jeszcze trochę dopracowana, jako, że udało się w kilka godzin dobić umiejętności Walki Mieczami i Anatomii oraz Taktyki prawie do maksymalnych wartości raptem w kilka godzin.

Doatkowo, przyrosty statystyk nie zostały odpowiednio uzależnione od wzrostu poziomu umiejętności, więc w kilka godzin mieliśmy pełen Stat Cap. To też wymaga regulacji.

Dalsze testy będą przeprowadzane już pod okiem Kaczego.

Co nowego przynosi ServUO

Dodatek Stygian Abyss daje nam dostęp do kolejnego, potężnego monstrum – Pogromcy Ukrytych. Na serwerach OSI można go znaleźć w dungeonie o nazwie… Stygian Abyss. Więcej o nim powiemy w przyszłości. A wracając do bossa… Ten boss posiada ciekawą mechanikę, jako, że, gdy zostaje zwabiony do tego koła na screenie poniżej, to jego siła jest znacznie obniżona. Jest też odporny na czar Word of Death z Druidyzmu, ale za to podatny na paraliże i czar Earthquake z Magii.

Sam boss potrafi czarować. Rzuca Strach, Mind Rot (Nekromancja) oraz potrafi zatruć śmiertelną trucizną.

Więcej o nim tutaj

Jeśli ktoś chciałby zobaczyć jak wygląda walka z tym bossem, polecam to wideo:

Upiększanie mapy

W tak zawanym międzyczasie, gdy jedni testują, inni kodują, to jeszcze inni budują. No, przebudowują.

Na tym screenie możecie zobaczyć rozdzielanie jednego dużego budnyku na 2 mniejsze

Pewne części mapy wymagają upiększenia, zmian i przebudowania, więc jurijuice zakasał rękawy, odpalił CentrED (oraz CentrED+) i zaczął upiększać naszą już i tak urodziwą mapkę 🙂 .

Tasandora z lotu ptaka – w trakcie poprawiania kilku małych elementów

Oczywiście i tu nie obyło się bez problemów technicznych.

Podsumowanie

Jak widzicie, praca wre na wszystkich frontach, pomimo urlopów, czy remontów. Mamy nadzieję dostarczyć wam kolejną porcję dobrych wiadomości w kolejnym DevBlogu już za 2 tygodnie.

Do miłego!

Read More

Nelderim DevBlog #15

Pomimo wyjazdów wakacyjnych w ekipie i nieznośnych upałów, my nie odpuszczamy i jak co dwa tygodnie dostarczamy wam skrót z tego co się działo za kulisami.

Przywracanie postaci

Wydarzyła się ostatnio wyjątkowa sytuacja, ponieważ napisał do nas jeden z graczy, że omyłkowo zamiast jednej postaci, usunął wszystkie i czy jesteśmy w stanie coś z tym zrobić.

Początkowo myśleliśmy, że jedyne co możemy to ręcznie przywrócić umiejętności i statystyki z backupu zaraz przed usunięciem postaci, jednakże w naszych głowach zrodził się szalony pomysł i bez zwlekania przeszliśmy do realizacji.

Plan był całkiem prosty, bo chcieliśmy postacie zapisać do formatu wpisu xmlspawnera, a następnie z tego formatu odtworzyć je na działającym serwerze.

W miarę szybko udało nam się rozgryźć odpowiednią składnię i mieliśmy gotowe zapisywanie i odtwarzanie najistotniejszych właściwości postaci, a chwilę później odkryliśmy, że jesteśmy również w dość prosty sposób odtworzyć aktualny ekwipunek, bez zawartości plecaka.

Nie obyło się również bez pomyłek po drodze 🙂

Ostatecznie gracz odzyskał wszystkie swoje postacie z podstawowym wyposażeniem.

Przy najbliższym restarcie, wprowadzimy również blokadę samodzielnego usuwania postaci które mają na liczniku ponad 48h godzin gry na wypadek podobnych omyłek, rage quitów czy włamań na konto.

Oczywiście postacie, których nie będziecie mogli usunąć samodzielnie, będziecie mogli usunąć z pomocą Mistrza Gry.

Tak więc mamy nowe narzędzie na takie sytuacje, ale zanim zaczniecie usuwać swoje postacie, wiedzcie że metoda ta jest dość ograniczona, przywrócić możemy tylko postacie do około 48h wstecz, wciąż wymaga to od nas dość sporo manualnej pracy oraz cały wasz dobytek z wyjątkiem aktualnego ekwipunku nie zostanie odzyskany.

Gainy

Po długiej przerwie, nareszcie udało nam się wrócić do właściwych prac na serwerze i zaczynamy kształtować docelową wersję systemu gainów.

Przed nami wiele godzin testów i żeby ułatwić sobie pracę postanowiliśmy już teraz zainwestować trochę czasu w przebudowanie systemu Power Hour.

Na ServUO system Power Hour będzie działał zupełnie inaczej i umożliwi Mistrzom Gry ustalenie globalnie dowolnego mnożnika gainów na określony czas.

Pozwoli to na przykład na eventy w postaci x1,25 gainów przez cały weekend, x2 gainów w piątkowy wieczór czy nawet x10 gainów gdy uznamy, że jest odpowiednia okazja 🙂

Natomiast to co teraz znacie jako Power Hour, od ServUO będzie się nazywać Gain Boost, będzie się aktywować dla konkretnej postaci poprzez jednorazowe przedmioty, natomiast mnożnik i czas działania będziemy mogli dostosowywać podobnie jak dla Power Hour.

Oczywiście oba te systemy współgrają ze sobą, a mnożniki sumują się.

Mając z nami te systemy oraz komendę liczącą przybliżony czas treningu możemy nareszcie przystąpić do regulowania systemu przyrostów umiejętności, ale o tym dopiero za dwa tygodnie.

Co nowego przynosi ServUO

Wraz z wejściem dodatku Time of Legends, w 2015 roku, otrzymaliśmy dostęp do nowego championa – Smoczego Żółwia. Wraz z wejściem tego championa dostajemy dostęp do nowych potworów, a z nimi również Pogromcę Dinozaurów. Tak, właśnie. Dinozaury. I nie mamy tu na myśli naszych wiekowych graczy, a moby, które zostały udostępnione graczom wraz z ToL, które będziemy starali się zaimplementować na ServUO. Nie jest to łatwe, jako, że fabularnie są one dość trudne do wpięcia w istniejący świat Nelderim.

Więcej informacji o nim tutaj

Ten nowy nabytek ma nowy atak specjalny – obszarowo rzuca kamienie dookoła siebie. Dodatkowo truje, wyrzuca broń z ręki i posiada smoczy oddech.

Po zgładzeniu tej bestii możemy otrzymać jajo smoczego żółwia i możemy wykluć małą wersję takiego żółwia. Więcej informacji tutaj.

Podsumowanie

Najbliższe dwa tygodnie pokażą jak dużo pracy będzie wymagać dostosowanie systemu gainów do naszej wizji, a jest to jakby nie patrzeć jedna z dwóch najważniejszych mechanik, zaraz obok systemu Loot i chcemy żeby właśnie te dwa systemy były jak najbardziej dopracowane.

I pilnujcie swoich postaci, żebyśmy mieli więcej czasu na ServUO 😉

Do następnego!

Read More

Nelderim DevBlog #14

Przychodzi GM na ServUO na testy, a ServUO do GMa:
-Co ja Patche(r)

W sumie to już nie Patcher, a Launcher….

No dobra, to było słabe…, ale wiecie co będzie mocne? Mocny to będzie ten DevBlog. 14 raz zapraszamy was na nasze WWW po nowości na ServUO.

W tym DevBlogu opowiemy o wczesniej wspomnianym Launcherze, trochę o Talentach oraz jak przebiegały ostatnie testy.

Weźcie coś zimnego do picia i zapraszamy do lektury! 🙂

Nadszedł Nelderim Launcher

Zgodnie z zapowiedzią, udostępniamy wam dzisiaj nową wersję Nelderim Patchera, który razem z niezbędnymi poprawkami otrzymał szereg dodatkowych funkcjonalności, powiew świeżości w postaci najnowszych bibliotek oraz nową nazwę, która powinna zostać z nami już do końca.

Nelderim Launcher możecie pobrać stąd NelderimLauncher.exe i do jego uruchomienia wymagany jest .NET 6 Runtime

NelderimLauncher należy umieścić w tym samym folderze w którym aktualnie znajduje się NelderimPatcher, a sam NelderimPatcher możecie usunąć 🙂

Kod źródłowy pojawi się niedługo na naszym koncie Github, gdy tylko uporamy się z ostatnimi poprawkami.

Co nowego przynosi ServUO

Talenty Oswajacza:

Oswajacz posiada 3 talenty – 1 z nich jest pasywny

ZAKLINANIE

Oswajacz zwierząt zwiększa przyrost umiejętności zwierzaka w oparciu o umiejętność Oswajania, Wiedzy o Zwierzętach i poziom Talentu.

A co to ten trening zwierzaków?

Po wprowadzeniu patcha Stygian Abyss, profesja oswajacza przeszła dość sporą zmianę. Do czasu ML, byliśmy przyzwyczajeni do oswajania zwierzaka o określonym slocie (1-5) i określonym zakresie statystyk, odporności, umiejętności i ataków specjalnych. Patch SA diametralnie zmienił ten fakt. W oryginalnej wersji tego Talentu (Mastery) znaczna większość oswajalnych stworzeń miała 1-2 sloty i należało je trenować, czyli po prostu wbijać im expa, by zbierały punkty, które możemy później wydać na ulepszenie takiego zwierza. Customizacja jest tutaj ogromna, więc możemy złapać sobie dowolne zwierze nadać im dowolne statystyki, odporności czy ataki zależnie do czego nam jest potrzebny. Raz wytrenowany zwierz nie może być zmieniony. Niestety, wraz z wzmacnianiem zwierzaka, zwiększa się wymagany poziom umiejętności, który potrzebny jest, by to zwierzę kontrolować. Przykład poniżej.

Wyżynna boura tuż po złapaniu
W grze znajdziemy opis jak korzystać z rozdawania punktów
A tak wygląda rozdawanie punktów
Po około 3 treningach osiągnąłem takie coś

TRENING BOJOWY

Oswajacz przygotowuje swojego zwierzaka do walki, dodając mu umiejętności bojowe w oparciu o umiejętność Oswajania Wiedzy o zwierzętach i poziom Talentu.


Poziom 1 – Wzmocnienie

Po trafieniu od obrażeń fizycznych zwierzak wchodzi w fazę wzmocnienia, w której zaczyna ładować swoje zwiększone obrażenia i zwiększaa obrażenia zaklęć przez 5 sekund. Podczas tego okresu, zwierzę będzie “przechowywać” wszelkie obrażenia fizyczne. Po zakończeniu okresu wzmocnienia zwierzak wchodzi w fazę uwolnienia na 10 sekund, w której zastosuje zwiększenie obrażeń i premie do obrażeń zaklęć w oparciu o zgromadzone obrażenia.


Poziom 1 – Jedyny

Pozwala zwierzakom dzielić obrażenia, gdy znajdują się blisko swojego pana. Wymaga wielu zwierzaków do aktywacji


Poziom 2 – Berserk

Gdy twój zwierzak otrzymuje obrażenia, zyskuje wściekłość, która zwiększa jego obrażenia fizyczne i przez 8 sekund zmniejsza wszystkie otrzymywane obrażenia. Podczas wściekłości twój zwierzak nie może się skradać, a wszystkie efekty leczenia są zmniejszone. Po okresie wściekłości następuje 60-sekundowy czas odnowienia, zanim zwierzak ponownie wejdzie w stan wściekłości.


Poziom 3 – Konsumpcja Obrażeń

Po trafieniu od obrażeń fizycznych zwierzak wchodzi w fazę absorbcji, w której zaczyna zwiększać swoją szansę na trafienie i regenerację przez okres 5 sekund. Podczas tego okresu absorbowania, zwierzę będzie “przechowywać” wszelkie obrażenia fizyczne. Po zakończeniu okresu “przechowywania obrażeń”, zwierzak wchodzi w fazę uwolnienia na okres 10 sekund, w której wykorzysta swoją szansę na trafienie i premię do regeneracji w oparciu o zgromadzone obrażenia.

POWIĘKSZONA STAJNIA

Gdy Talent jest aktywny, oswajacz otrzymuje dodatkowe miejsca w stajni.

Testy, testy i jeszcze raz testy

Tym razem na tapetę wzięliśmy kilka aspektów gry. Pierwszym i najważniejszym elementem testów było sprawdzenie wpływu gradacji trudności potworów na ich loot. O autorskim systemie możecie przeczytać we wcześniejszym DevBlogu#4 – TUTAJ.

Testy odbyły się w Wulkanie nieopodal Ferion. Udało nam się przejść wszystkie 4 poziomy. Nie obyło się bez strat. Wnioski jakie wysnuliśmy z tych testów, to, między innymi: zbyt duża ilość złota, zbyt duża ilość reagentów, odpowiednie nasycenie przedmiotów względem trudności potworów. Podczas testów pojawiło się kilka dość poważnych błędów, takich jak: oswajalne potwory podlegały gradacji siły (co zostanie naprawione w kolejnej wersji systemu), FireBreath od Potężnego Smoka potrafi zabić postać, która nie ma 70 odporności na ogień, a taka która ją posiada, traci 3/4 życia (należy uniezależnić ten atak specjalny od życia potwora).

Przykładowy loot silnego smoka

Po wielu zgonach dotraliśmy do bossa, którego udało się zgładzić. Bossy również muszą zostać wyłączone z systemu gradacji.

No i padliśmy…

Dodatkowo udało się przetestować nowego zwierzaka – Żuka Mrozu oraz System trenowania zwierząt (opisany powyżej). Przez cały dungeon udało się wbić 40% poziomu. To stanowczo zbyt szybki progres i będzie musiał zostać on delikatnie spowolniony.

Sam żuk jest bardzo silny. Jego podstawowa wersja miała 800 punktów życia i około 86 odporności na zimno. Więcej o nim TU.

Podsumowanie

A więc tak… mamy świetny system gradacji mobów, który pozowli nowej postaci ruszać od razu na dungi, a nie spędzać czas na cmentarzu, czerwonych orkach czy też Świątyni Śmierci.

Mamy też świetny system ternowania petów.

I mamy wyczesany Launcher.

Czegóż to chcieć więcej? No jak to czego… więcej DevBlogów!

Widzimy się w następnym 😉

Read More

Nelderim DevBlog #13

Witamy was po raz trzynasty w naszym blogu, gdzie opisujemy postępy w migracji na nowy silnik, i nie tylko.

Chyba nareszcie wygrzebaliśmy się z prac około serwerowych i będziemy mogli wrócić do prac nad tym na co wszyscy czekają, no ale bez przedłużania, zapraszamy was do lektury.

Szereg usprawnień NelderimPatcheraLaunchera

Zgodnie z zapowiedzią skoncentrowaliśmy nasze siły na usprawnieniu naszego narzędzia, które pozwala w bardzo prosty sposób dostarczać wam aktualizacje klienta.

Problemami które skłoniły nas do priorytetowego podjęcia działań było niewspieranie połączeń szyfrowanych (HTTPS) oraz niezapamiętywanie adresu serwera z aktualizacjami, co w związku z ostatnimi zmianami na serwerze było dość uciążliwe 🙂

Przy tak wielkiej okazji, bo NelderimPatcher chyba od początku nie otrzymał żadnej aktualizacji, zdecydowaliśmy się dokonać kilka dodatkowych zmian z myślą o tym co planujemy w przyszłości.

Chyba najważniejszą kwestia jest to, że NelderimPatcher staje się już teraz zapowiadanym długi czas NelderimLauncherem, jako że docelowo, chcemy żeby zajmował się nie tylko aktualizacjami, ale również zarządzaniem konfiguracją oraz uruchamianiem klienta.

Dodatkowo nasz plan trochę się zmienił, ponieważ zamiast rozwijać obecny projekt, przepisaliśmy cały kod, podnieśliśmy wersję frameworku do najnowszego .NET 6 oraz zamieniliśmy framework graficzny z WindowsForms na AvaloniaUI, dzięki czemu NelderimLauncher będzie mógł pracować nie tylko na systemie Windows 🙂

Nowocześniejsza szata graficzna jako efekt uboczny 🙂

Sam interfejs dużo się nie zmienił, jednakże został on delikatnie uproszczony, okno można teraz rozszerzać, wszystko zostało spolszczone, a dodatkowo okno już nie będzie się zawieszać po kliknięciu “odśwież” 😀

Oczywiście wymagane poprawki zostały wprowadzone, czyli została dodana obsługa połączeń HTTPS i przy okazji aktualizacja samego klienta HTTP/HTTPS, a także konfiguracja adresu serwera z aktualizacjami będzie “pamiętana” przez NelderimLauncher, a przy okazji mamy możliwość łatwego dodawania dodatkowej konfiguracji w razie potrzeby.

Ostatnią zmianą którą zapowiadaliśmy i pojawi się w NelderimLauncherze jest funkcja self-update samego NelderimLaunchera, której implementacja okazała się być trochę bardziej skomplikowana niż początkowo myśleliśmy, aktualnie “działa”, ale wymaga jeszcze trochę poprawek oraz dodatkowych testów.

Oczywiście kod źródłowy NelderimLaunchera zostanie udostępniony na GitHubie, obok naszych innych repozytoriów, jak tylko uporamy się z ostatnimi problemami 🙂

Tłumaczenia inkantacji Talentów (Skill Masteries)

Juhuuu! W końcu udało nam się dopiąć sprawy związane z Talentami (Skill Masteries). Tłumaczenia inkantacji Talentów zajęły nam chwilę, ale po kilku dniach przekopywania się przez kod oraz Cliloc.enu, wszystkie słowa zostały przetłumaczone na wersje mniej lub więcej odzwierciedlające oryginalne

Co nowego przynosi ServUO

Mistycyzm

Wraz z nowymi dodatkami pojawiły się nowe umiejętności. Z dodatkiem Stygian Abyss dostaliśmy Mistycyzm. Mistycyzm jest podobny do Nekromancji czy Druidyzmu. Mistyk, aby jego czary były skuteczne, będzie wymagać umiejętności Koncentracja, która będzie działać jak Mądrość z Magią. Mistycyzmu na OSI można nauczyć się od NPC. Niektóre podstawowe czary można zakupić u tego samego NPC.

Kilka obrazków prezentujące czary i grafiki mistyka

Więcej o mistycyzmie możecie przeczytać na UOGuide.

Podsumowanie

I kolejne dwa tygodnie za nami, małymi kroczkami ale systematycznie dążymy do celu 🙂

A może wy macie jakieś sugestie jakie funkcje powinniśmy dodać do NelderimLaunchera? Dajcie nam znać na Discordzie.

Do następnego!

Read More

Nelderim DevBlog #12

Witamy was ponownie w okrągłej, dwunastej już części naszego DevBloga.
Jest to “okrągła” liczba, ponieważ dokładnie pół roku temu rozpoczęliśmy mobilizację w ekipie i skoncentrowaliśmy nasze siły na migracji na nowy silnik.
A oto co się działo za kulisami ostatnimi czasy…

Kolejne prace serwerowe

Ostatnio ogłaszana migracja serwera na system Linux okazała się nawet większym sukcesem niż szacowaliśmy, ponieważ pomimo obniżonych kosztów, okazało się, że serwer pracuje wydajniej pod kontrolą nowego systemu co przekłada się na niższe opóźnienia w rozgrywce oraz skrócone czasy zapisywania świata gry.

Pomimo tego, że migracja została ogłoszona jako zakończona sukcesem, za kulisami mieliśmy jeszcze sporo pracy, żeby serwer spełniał wszystkie nasze wymagania.

Pierwszym zadaniem było wprowadzenie certyfikatu oraz szyfrowania połączenia na naszym serwerze WWW.

Na poprzednim serwerze co prawda również mieliśmy wygenerowany certyfikat dla domeny, ale z powodu problemów konfiguracyjnych ostatecznie zdecydowaliśmy pozostawić naszą stronę jako nieszyfrowaną.

Na systemie Linux cały proces był praktycznie w pełni zautomatyzowany, nasza strona internetowa jest uznawana za “bezpieczną” już od około tygodnia, a do tego nie zauważyliśmy żadnych problemów tak jak na poprzednim systemie.

Kolejnym krokiem była instalacja oraz konfiguracja serwerów poczty internetowej, ponieważ bez tego nie byliśmy w stanie wysyłać loginów i haseł dla nowo założonych kont, a tego jednego (nie)szczęśliwca który musiał kilka dni czekać na dane do logowania gorąco przepraszamy 😀

Oczywiście tutaj dołożyliśmy też wszelkich starań, aby maile wysyłane od nas były szyfrowane, podpisywane i co tam jeszcze tylko było potrzebne, żeby inne serwery nie wrzucały maili od nas bezpośrednio do kubła ze śmieciami 🙂

Przy okazji tych prac usprawniliśmy dodatkowo sam proces zakładania kont i teraz ekipant do założenia konta potrzebuje jedynie Ultimy Online oraz przeglądarki internetowej, gdzie przed usprawnieniami potrzebne były dodatkowe narzędzia do obsługi bazy danych oraz skrzynki pocztowej.

Powinno to znacząco skrócić czas oczekiwania na konto, ponieważ na upartego, możemy teraz wykonywać cały proces rejestracji nawet z telefonu 😀

Niestety nie wszystko poszło tak kolorowo…

Nadchodzące zmiany w NelderimPatcher

Zupełnie przypadkiem, przy okazji testów ServUO okazało się, że nasz wspaniały NelderimPatcher nie obsługuje szyfrowanych połączeń i zabezpieczając naszą stronę internetową, zablokowaliśmy możliwość aktualizowania klienta Ultimy Online.

Tymczasowo udostępniliśmy pliki poprzez połączenie nieszyfrowane, ale docelowo wprowadzimy niezbędną poprawkę do samego NelderimPatchera, a przy okazji tej poprawki, otworzymy sobie furtkę z zupełnie nowymi możliwościami.

Ową furtką jest wprowadzenie do NelderimPatcher funkcji self-update, dzięki której będziemy mogli w prosty sposób dostarczać wam poprawki oraz nowe funkcjonalności do samego patchera.

Możliwość wprowadzenia poprawki w prosty sposób w takiej nagłej sytuacji jest nieoceniona, a jako następne w kolejce mamy zadanie, aby NelderimPatcher pamiętał ostatni adres z którego pobierał pliki, żebyście nie musieli za każdym razem podmieniać wpisanego na stałe w NelderimPatcher adresu IP starego serwera 😀

W związku z zapowiedzią nadchodzącego powolnymi krokami NelderimLaunchera taka możliwość okaże się dodatkowo bardzo pomocna, bo będziemy mogli systematycznie udostępniać wam nowe funkcjonalności, aż pewnego dnia NelderimPatcher przepoczwarzy się w przepięknego NelderimLaunchera, ale to wciąż odległa przyszłość 🙂

Testy, testy, testy…

Mieliśmy przyjemność spotkać się w typowym dla naszych testów czterosobowym zespole, gdzie sprawdzaliśmy jak zachowują sie poszczególne AI mobów oraz jak działaja mechaniki nowych bossów.

Dzięki dodaniu nowych typów sztucznej inteligencji gra staje się dużo bardziej rozbudowana, a przeciwnicy bardziej unikalni. Stwory potrafią posługiwać się takimi magiami jak druidyzm, mistycyzm czy skrytobójstwo. Dodatkowo bossy otrzymały nowe umiejętności oraz nowe animacje jak na przykład ognisty deszcz Stygian Dragona.

Ściana ognia po lewej stronie to podpalenie po ognistym deszczu

Co nowego przynosi ServUO

Z nadejściem nowego silnika, zmieni sie system kopania skarbów. Co ciekawe zmieni się również rozkład umiejętności dla postaci poszukiwacza skarbów.

Mapy skarbów

Otrzymujemy na ServUO 5 poziomów skarbów: Stash, Supply, Cache, Hoard oraz Trove (system nie otrzymał jeszcze tłumaczeń). Ciekawym zastosowaniem zostało pominięcie górnictwa jako umiejętności wspomagającej szukanie skarbów, które zostało zastąpione kartografią. Przewiduje ona cztery progi, przy których zmienia sie zakres błedu liczony w kratkach od skarbu podczas kopania:
0% – 1 kratka
51% – 2 kratki
81% – 3 kratki
100% – 4 kratki
W grze pojawią się również okulary kartografa, które dodają 5% kartografii, a ten bonus wlicza sie do promienia poszukiwań, w przeciwieństwie do talizmanów, które nie wliczają się w zakres błędu kopania.

Zmianie ulega również system strażników skrzyni skarbu. Każda skrzynia posiada czas na otwarcie jej aby uniknąć konfrontacji z kolejnymi falami strażników – od pierwszego poziomu w górę 20>60>180>420>540 sekund. Wybuch pułapki, która nie została rozbrojona skutkować będzie pojawieniem się kolejnych strażników. Do gry wprowadzono również nowego stworka, który będzie próbował podwędzić przedmioty ze skrzynki i z nimi uciec. Poznajcie Grubbera!

Więcej informacji o skrzyniach skarbów znajdziecie TUTAJ

Podsumowanie

Od 6 miesięcy, skurpulatnie dokumentujemy nasze pracę, aby co drugi piątek(z jednym malutkim potknięciem ;)) móc podzielić się z wami postępami.

Postęp jaki udało nam się zrobić przez ten czas robi wrażenie, pomimo wielu przeszkód po drodze i niedoboru czasu.

Kto wie co nas czeka za kolejne 6 miesięcy, może moment migracji będzie wtedy tuż za rogiem?

Do następnego!

Read More

Nelderim DevBlog #11

Czasem należy zrobić krok w tył, żeby móc zrobić dwa kroki do przodu i właśnie pod takim hasłem stoi dzisiejsza część DevBloga. Gorąco zapraszamy do lektury o kolejnych dwóch tygodniach postępów w pracy nad migracją na nowy silnik 🙂

Krok w tył na mapie

Mieliśmy już nie pisać o kliencie, bo ostatnio ogłosiliśmy że był gotowy, ale jak się okazało, nie wszystko poszło zgodnie z planem.

Chcieliśmy rozpocząć nareszcie prace na mapie, bo szykują się pewne zmiany w związku z przesiadką na nowy silnik i zauważyliśmy, że Orod nie jest w najlepszym stanie.

Krótko mówiąc wygladało to jakby przeszło tam tornado, ponieważ miejscami obiekty były nie tam gdzie być powinny.

Początkowo myśleliśmy, że problem dotyczył tylko Orod i że pewnie w którymś momencie jeden z budowniczych “coś źle kliknął” i fragment mapy uległ uszkodzeniu, bo już zdarzały się takie sytuacje.

W Orod niektóre obiekty były wyżej albo niżej niż powinny

Z ciekawości sprawdziliśmy czy na pewno tylko Orod zostało uszkodzone i niestety okazało się, że na całej mapie roi się od błędów i że nie jesteśmy w stanie ręcznie wszystkiego poprawić.

W śnieżnej przystani niektóre obiekty miały zmienione itemID
W jednym z podziemi niektóre obiekty miały niepoprawne hue lub niepoprawne itemID

Podjęliśmy decyzję, żeby przygotować mapę na nowym kliencie od nowa, ponieważ wiemy że aktualna mapa nie jest uszkodzona, a dodatkowo po każdym kroku sprawdzaliśmy czy wszystko jest w porządku.

Na szczęście wszystkie zmiany w plikach mieliśmy skrzętnie udokumentowane i przygotowanie mapy po raz drugi trwało duuużo krócej.

Nie musieliśmy też długo czekać, aby znaleźć co psuło mapę, bo było to narzędzie do kopiowania fragmentów mapy, którego używaliśmy jako pierwsze do rozszerzenia mapy i przekopiowania dungeonów z innej mapy na mapę główną.

Szybkie rozeznanie i okazało się, że istnieje nowsza wersja owego narzędzia, która nie niszczy mapy, działa zdecydowanie szybciej, a dodatkowo naprawia kilka innych problemów, które do tej pory naprawialiśmy innym narzędziem.

Powiększyliśmy mapę, skopiowaliśmy dungeony(tym razem zrobiliśmy to nawet lepiej, bo po ostatnim kopiowaniu jeden dungeon nie był skopiowany poprawnie, podmieniliśmy grafiki, podmieniliśmy kolory, sprawdziliśmy, że wszystko tym razem jest w porządku.

I teraz już możemy robić “dwa kroki do przodu”, ale o tym innym razem 😉

Przesiadka na Linuxa

Dwa tygodniu temu pisaliśmy, że chcemy się przesiąść na inny system operacyjny, a dzisiaj możemy ogłosić, że jesteśmy już bardzo blisko 🙂

Poprzedniego DevBloga zakończyliśmy działającym serwerem RunUO na wirtualnej maszynie, natomiast zaraz po tym wystawiliśmy serwer na testowej fizycznej maszynie i rozpoczęliśmy testy dla członków ekipy.

Nie znaleźliśmy żadnych nieprawidłowości i otworzyliśmy testowy serwer dla kilku ochotników, którym jeszcze raz chcemy gorąco podziękować za poświęcony czas.

Nasi dzielni ochotnicy znaleźli aż jeden błąd w konfiguracji, którego czas naprawy można było liczyć w sekundach 😀

Zakończyliśmy zamknięte beta testy i przystąpiliśmy do kolejnego etapu, jakim jest przygotowanie się na przeniesienie całej reszty oprogramowania, bo na maszynie działa znacznie więcej niż tylko serwer UO.

Na testowym serwerze przygotowaliśmy scenariusze na migracje serwera WWW, bazy danych, serwera plików, serwera poczty, naszych narzędzi służących do prac między innymi nad mapą oraz wszelakich certyfikatów, żeby była “kłódka w przeglądarce”, a maile nie trafiały do spamu.

Teraz coś czego jeszcze nie było w blogu, bo opiszemy wam krótki plan migracji na Linuxa, który dopiero się wydarzy 😀

W sobotę przygotujemy docelowy serwer, zainstalujemy niezbędne oprogramowanie, przeniesiemy nasze WWW, bazę danych oraz upewnimy się że wszystko działa jak należy.

W niedzielę o godzinie 20:00 odbędą się stres testy, na które chcemy żeby zalogowali wszyscy, którzy mają taką możliwość, natomiast zaraz przed testami wyłączymy obecny serwer i przekopiujemy aktualny sejw.

Jeżeli wszystko pójdzie zgodnie z planem, serwer zostanie tak jak będzie stał i będziecie mogli po prostu wrócić do normalnej rozgrywki 😀

Jeżeli coś pójdzie nie tak, to mamy jeszcze dwa tygodnie na ewentualne poprawki do czasu ostatecznego zabicia aktualnej maszyny.

Trzymajcie mocno kciuki i mamy nadzieję, że widzimy się w licznym gronie na testach w niedziele o godzinie 20:00!

Co nowego przynosi ServUO

Wraz z nadejściem upragnionego ServUO, w konkretnie patcha Stygian Abyss, otrzymujemy kolejny typ golema, jaki możemy stworzyć za pomocą umiejętności Majsterkowanie. Tym nowym typem istoty kontrolowanej jest Vollem.

Na OSI, aby stworzyć takiego Vollema, należy uprzednio ukończyć quest. Dodatkowo, należy mieć przy sobie odpowiednie materiały:

Vollem, tuż po pojawieniu się, zajmuje 2 sloty. Może on zostać wytrenowany za pomocą Talentu (Mastery) Oswajacza – dzięki temu można nadać mu skille oraz zwiększyć statystyki, kosztem slotów.

Vollem może być leczony za pomocą umiejętności Majsterkowanie z wykorzystaniem sztab żelaza – tak jak inne golemy.

Jak wytresować smoka (i pająka), żeby dał się dosiadać?

Po pierwszym roku prowadzenia Nelderim, dostaliśmy propozycję odnośnie dużych, 5-slotowych zwierzątkach, które można dosiadać. Dodatkowo, gracze chcieli, by można dosiadać młode smoki. Od jakiegoś czasu staramy się zrealizować te propozycje.

Dodaliśmy już 2 nowe zwierzaki – smocze pisklę oraz ogromnego pająka.

Podsumowanie

Migracja na nowy silnik to strasznie dużo pracy, trzeba być czujnym na każdym kroku i sprawdzać wszystko dwa razy, żeby później nie okazało się że nasza praca pójdzie do kosza. W związku z pracami nad nowym serwerem awarii uległa nasza strona WWW i nie byliśmy w stanie opublikować tej części DevBloga na czas, ale dołożymy dodatkowych starań, żeby następna odsłona pojawiła się w piątek tak jak wszystko inne 🙂

Do następnego!

Read More

Nelderim DevBlog #10

Dziesięć to taka ładna okrągła liczba. Dziesiąty DevBlog oznacza, że mamy dla was sporą porcję informacji. W tym DevBlogu omówimy co dalej robiliśmy z systemem gainów, zmianie środowiska, w którym stał będzie serwer, co nowego na ServUO oraz trochę o tłumaczeniach. Finalnie, dowiecie się też jak zostać naszym Patronem. 🙂

Miłej lektury!

Kontynuacja prac nad systemem gainów

Mineło 5 DevBlogów ( nowa jednostka czasu 🙂 ) odkąd ostatnio pisaliśmy o postępach w systemie gainów i nareszcie udało nam się wrócić do tego tematu.

Dla przypomnienia: piszemy funkcję, która obliczy dla nas przybliżony czas jaki będzie potrzebny, aby wytrenować konkretną umiejętność na żądany poziom i na podstawie uzyskanych wyników będziemy modyfikować współczynniki systemu gainów, aby dostosować trening postaci pod naszą wizję serwera.

Umiejętności w grze jest dokładnie 58, dwie umiejętności trenują się same, dwie są nieużywane, a dla każdej z pozostałych indywidualnie wyznaczamy w jaki sposób liczyć estymatę czasu treningowego.

I tak oto od ostatniego devbloga udało nam się wykreślić z listy do zrobienia, wszystkie umiejętności z wyjątkiem umiejętności stricte bojowych (walka mieczami, parowanie, walka wrecz, itp.)

Kontynuowaliśmy prace zaczynając od umiejętności magicznych, ponieważ była to grupa umiejętności, które można było teoretycznie rozwiązać jednym kodem, a w praktyce okazało się, że jednak są to dwie grupy magicznych umiejętności(czary oraz “ruchy specjalne”), które należało traktować delikatnie inaczej.

Była to zarazem grupa umiejętności najbardziej rozbudowana, ponieważ należało brać pod uwagę, którym czarem najlepiej trenować oraz regenerację many z uwzględnieniem wszystkich zmiennych jak inteligencja, medytacja, przemiany, magiczne właściwości oraz aktywna medytacja.

Była to też pierwsza grupa, w której pierwsze estymaty odbiegały znacząco od realnych wyników i musieliśmy się naszukać i trochę pogłówkować zanim znaleźliśmy jak należy poprawić formułę.

Ostatecznie udało nam się otrzymać wyniki różniące się o zaledwie dwie minuty od czasu prawdziwego treningu o czasie dwóch godzin!

Czas trenowania umiejętności na pewno ulegnie zmianie 🙂

Po umiejętnościach magicznych, wzięliśmy na celownik wszystkie umiejętności których nie dało się w żaden sposób pogrupować i dla każdej z osobna wyznaczyliśmy mniej, lub bardziej celne współczynniki dla estymat.

I zabrakło nam już bardzo niewiele, bo mniej niż 10 umiejętności, które należy dodać do funkcji, następnie porządnie wszystko przetestować, a dopiero po tym wszystkim szaleńczo kręcić pokrętłami w systemie gainów, aż do uzyskania zadowalających wyników, ale o tym może następnym razem 😉

Bardziej dociekliwi mogą zapoznać się z kodem źródłowym, może znajdą jakieś błędy albo będą mieć sugestie jak możemy coś poprawić 🙂

Porzucamy okna na rzecz pingwina

Teraz będzie troszeczkę mniej o ServUO, a do tego poruszymy temat o którym w zasadzie już kiedyś mówiliśmy, ale pojawiła się nowa, piękna wizja i bez zastanawiania wzięliśmy się potwierdzanie pewnej hipotezy.

Niektórzy pewnie już wiedzą po nagłówku o co chodzi, ale żeby było jasne, postanowiliśmy spróbować przenieść obecny serwer z systemu Windows na Linux, a główną zaletą przesiadki jest to, że licencja na system Windows Server jest droższa od samego sprzętu, a Linux jest darmowy 🙂

RunUO od zawsze kojarzyło się bardziej z systemem Windows ze względu na platformę .NET i nawet nie rozważaliśmy nic innego na początku Nelderim, jednakże w wielu miejscach można było się natrafić na wzmianki o Linuksowym zamienniku dla .NET o nazwie MONO.

Wiemy że ServUO będzie od samego początku stało na systemie Linux, jako że w bardzo niedalekiej przyszłości ma posiadać oficjalne wsparcie dla systemów Linux oraz MacOS dzięki .NET w wersji 5, a serwer testowy już teraz jest Linuksowym polem doświadczalnym dla ekipy 🙂

Pojawił się szalony pomysł próby przeniesienia obecnego serwera na system Linux i platformę MONO i nic nie stało na przeszkodzie, aby chociaż spróbować.

Oprócz niższych kosztów są też dodatkowe zalety, takie jak to, że już teraz ekipa by się mogła szkolić w obsłudze Linuxa, a dodatkowo jak wykonamy migrację na nowy system już teraz, to będziemy mieć dużo mniej roboty w okresie końca migracji samego silnika 🙂

Pierwsza próba została przerwana niekompilującym się serwerem, szybkie poprawki i jedziemy dalej.

Kolejną przeszkodą były niekompilujące się niektóre skrypty oraz błędy w samym projekcie, które również w miarę sprawnie udało nam się załatać.

I gdy już wszystko się kompilowało i serwer dawał znaki, że udało mu się wystartować napotkaliśmy bardzo nieprzyjemny problem w postaci zawieszającego się serwera oraz klienta w momencie wyboru shardu.

Problem był na tyle uciążliwy, że nie objawiał się żadnym komunikatem, oba procesy najzwyczajniej zawieszały się, a dodatkowo za nic w świecie nie mogliśmy połączyć się narzędziami diagnostycznymi do serwera, ponieważ nie wszystko jest odpowiednio wspierane przez platformę MONO.

Nakombinowaliśmy się okropnie, żeby tylko uzyskać jakąkolwiek informację co jest nie tak, próbowaliśmy na wiele sposobów w przeciągu kilku dni i jedyne co udało nam się ustalić, to że klient wysyła pewien komunikat, który ginie gdzieś po drodze do serwera i dlatego oba procesy się zawieszają.

Nie udało nam się jednak definitywnie namierzyć dlaczego serwer nie może odebrać komunikatu i po wielu próbach wpadliśmy na pomysł, że jest szansa, że już to ktoś kiedyś rozwiązał i był to strzał w dziesiątke 🙂

Przeszukaliśmy projekt ServUO, ale kod sieciowy zbyt mocno się różnił, aby wywnioskować jak należy przygotować poprawkę i na ratunek przybył nam kod oryginalnego RunUO, który mimo wszystko jest bardziej aktualny od kodu bazowego Nelderim.

Kod sieciowy RunUO okazał się również dość mocno zmodyfikowany, ale dużo bardziej przypominał to co mamy na Nelderim i była szansa że znajdziemy tutaj rozwiązanie naszego problemu.

Zamiast namierzać dokładnie co należy naprawić, zastąpiliśmy jeden do jednego wadliwą część kodu sieciowego kodem z RunUO i jak rękął odjął wszystko zaczęło działać.

I tak oto pojawiło się światełko nadziei, że już niedługo nasze portfele będą szczęśliwsze, jednak jeszcze dużo pracy i przede wszystkim testów, żeby upewnić się że stabilność serwera będzie na takim samym poziomie po zmianie systemu.

Co nowego na ServUO

Wraz z ServUO otrzymujemy nowego bossa z ciekawą mechaniką.

Corgul uderza mocno zarówno w walce wręcz, jak i zaklęciami. Corgul ma aurę życia, która spowoduje, że opcje/umiejętności przedmiotów wysysających życie (np. Vampiric Embrace) będą działały w odwrotny sposób. Gracze odczują spadek życia zamiast oczekiwanego efektu leczenia. Wysysanie many i wytrzymałości działają normalnie.

Corgul jest podatny na Pogromcę Humanoidów (Repond Slayer), ale jest także Nekromantą, więc uważaj na Przysięgę Krwii (Blood Oath).

Corgul ożywi martwego (Animate Dead), więc trzymaj go z dala od ciał. Uważaj, walcząc jednocześnie z Corgulem i dodatkowymi grupami przywołańców, ponieważ te dodatkowe grupy mogą się odradzać w pobliżu Corgula. Jeśli będziesz nieostrożny, możesz znaleźć się po środku potyczki z armią nieumarłych i Corgulem.

Weź mi to przetłumacz…

Od dłuższego czasu pracujemy nad Masterkami. Nadszedł czas, by nadać im trochę polskiego akcentu. Oto propozycje tłumaczeń, które przygotowaliśmy do tej pory:

Primer przetłumaczony jako Księga Umiejętności Specjalnej
Mastery przetłumaczone zostało jako Talent

Jako, że mamy nowy silnik, nowe patche, oznacza to też, że mamy dużo nowych przedmiotów, dla których należy znaleźć nową nazwę. Oto przykłady nowych przedmiotów w menu kucharza

Zostań naszym Patronem

Po pewnych perturbacjach ze stronami, które pozwalają na postanie patronem projektu Nelderim, w końcu udało nam się znaleźć idealne miejsce w sieci dla nas. Jest nim Patreon. Założyliśmy tam profil, który będzie pozwalał wam wspierać naszą pracę niewielką sumą w modelu subskrybcji, gdzie płatność odbywa się co miesiąc. Dostępne są 3 plany, które pozwolą wam między innymi odznaczenie się wśród tłumu na Discord jako nasz Patron, a także wcześniejszy wgląd w planowane zmiany przed ich wprowadzeniem.

Więcej dowiecie się tutaj: Patreon Nelderimu

Podsumowanie

Zbierając to wszystko do przysłowiowej kupy: czas naszego ukochanego koxu z pewnością zmieni się. Ponadto, porzucamy Windowsa na rzecz Linuxa. Mamy nowego bossa w naszej palecie PvM, a co za tym idzie, nową mechanikę, którą można potencjalnie wykorzystać w innych bossach. Przy nowych systemach pojawia się dość spora ilość tłumaczeń. Od teraz możecie zostać Patronami Nelderim 🙂

I to by było na tyle w 10-ej odsłonie DevBloga. Mamy nadzieję, że w kolejnej porcji nowości i zmian będziemy mogli zaserwować wam równie pokaźną ilość smaczków.

Read More

Nelderim DevBlog #9

W tym tygodniu DevBlog jest raczej skromny, ale udało nam się odnieść znaczący sukces, tak więc możecie otwierać małego szampana 🙂

Finał wstępnych prac nad klientem

Nareszcie udało nam się zamknąć jedną z większych kwestii wymaganych do migracji, jaką było przeniesienie wszystkich naszych modyfikacji w kliencie Ultimy Online.

W ciągu ostatnich dwóch tygodni przenieśliśmy zmiany znajdujące się w gumpach, czyli w interfejsie graficznym oraz w tiledata, czyli w informacjach uzupełniających grafiki o atrybuty mówiące na przykład czy postacie mogą przechodzić przez daną grafikę, albo czy daną grafikę można ekwipować.

Dzięki gotowemu klientowi:

  • możemy dokładnie testować, czy wszystko działa i wyświetla tak jak należy,
  • mamy udokumentowane wszystkie modyfikacje, przez co możemy nakładać zmiany z nowszych wersji klienta i nareszcie dokładnie wiemy co wam udostępniamy 🙂
  • możemy skupić się teraz bardziej na pracach nad serwerem,
  • możemy dodawać do klienta nowe modyfikacje w postaci grafik, dźwięków i innych, gdzie pierwsze efekty tego były widoczne w poprzedniej części bloga w postaci kolorowych świateł, a kolejne nowości będziemy wrzucać na bieżąco, zaczynając od teraz 🙂

Graficzny upgrade

Jako, że Ultima Online ma już swoje lata, niektórzy mawiają, że jej interfejs, grafika, są trochę przestarzały. Prawda? Możliwe. Dlatego zdecydowaliśmy się wykorzystać dostępne w internecie zasoby, w celu nadania naszej ulubionej grze trochę świeżości. To jeden z kilku graficznych upgrade’ów jakie planujemy. Na screenach poniżej możecie zobaczyć jakie grafiki zostały zmienione

Grafiki terenu również otrzymały mały powiew świeżości. Zostały one bowiem podmienione na grafiki, które są bardziej wygładzone i wyglądają trochę bardziej nowocześnie.

Rozważamy również dać wam możliwość zdecydowania indywidualnie czy chcecie używać nowych grafik, czy przywrócić oryginalne wersje, jeżeli na przykład jesteście zbyt bardzo przywiązani do starego wyglądu, albo nowe grafiki po prostu wam się nie podobają 🙂

Co nowego w ServUO

Nowe zwierzaki

Nowe tamowalne stworki

Wraz z pojawieniem się nowych dodatków (Stygian Abyss, High Seas, Times of Legends), pojawiły się też stwory do oswojenia, a co za tym idzie, również nowe grafiki. Część z tych stworów, to zwierzęta dla Oswajacza, ale nie tylko. Przykładem jest żelazny żuk, który, UWAGA, UWAGA!, jest petem dla górnika… Tak! Górnika. Kopie on bowiem rudę bez naszego udziału.

Umiejętności, ataki specjalne… to wszystko jest nieistotne, ponieważ pojawiający się w patchu Stygian Abyss system masterek, który opisywaliśmy w poprzednich DevBlogach, diametralnie zmienia użyteczność i dobór zwierząt przez oswajacza. System ten pozwala na personalizowanie zwierzaczków, lecz o tym, w następnych DevBlogach 😉

Podsumowanie

I to już koniec wieści z frontu, a przynajmniej koniec wieści, którymi możemy się z wami podzielić na ten moment, bo niektóre tematy nie są jeszcze gotowe “do pokazania”, a część chcemy zachować w tajemnicy aż do momentu migracji 🙂

Jak zawsze, dajcie znać co sądzicie o nadchodzących zmianach.

Do następnego!

Read More