Fork me on GitLab
Wersja 0.43.0 i pożegnanie 2017-12-06 - Vedyimyn

Zespół OpenMW ma zaszcyt ogłosić wydanie wersji 0.43.0! Do pobrania, jak zwykle, tutaj, dla wszystkich systemów operacyjnych. Dodano wiele nowych funkcji i poprawek, poprawiono sztuczną inteligencję i skróty klawiszowe dla menu.

Koniecznie zobaczcie film o OpenMW i film o OpenMW-CS, autorstwa czcigodnego Atahualpy.

By zobaczyć listę zmian, zapraszam na angielską wersję blogu. Zapraszam tam również czytelników polskiej strony, zainteresowanych kolejnymi newsami.

Od kilku lat tłumaczyłem posty z angielskiej strony. Cieszę się, że mogłem umożliwić lekturę osobom, które z żywym zainteresowaniem chcą śledzić dalsze losy projektu, czytając materiały na ten temat w swoim własnym języku. Myślę, że nadszedł dla mnie czas, bym ustąpił z tego stanowiska.

Polska strona może być od tej pory rzadziej aktualizowana, w związku z czym proszę o śledzenie strony angielskiej. Gdyby ktoś chciał kontynuować tłumaczenia, lub pisać własne posty w języku polskim, oczywiście zapraszam do kontaktu na forum. Być może znajdzie się nawet ktoś, kto miałby chęć i umiejętności, by dodać polskie napisy do filmów chcigodnego Atahualpy, kto wie? 😉 Myślę, że byłoby to znaczącym dziełem.

Z pozdrowieniami
i życzeniami wytrwałości
dla Czytelników
i całego zespołu OpenMW,
Vedyimyn

Zapraszamy do komentowania tutaj.
Dzieje się na GitHubie 2017-10-16 - Vedyimyn

Minął kolejny miesiąc od ostatniego newsa. Sporo się wydarzyło od ostatniego czasu, więc nie będziemy zwlekać z nowinkami.

Jak mogliście przeczytać w poprzednim poście, ostatnie wydanie (0.42) przyciągnęła nieco nowych deweloperów do pracy nad silnikiem i edytorem. Zaczynamy dostrzegać rezultaty.

Oto funkcjonalności, nad którymi trwają obecnie prace:

Akortunov, wciąż względnie nowy deweloper, miażdzy bugi jak profesjonalista. Pracował także nad kilkoma nowymi funkcjami. Jedna z nich do przebudowa systemu kradzieży kieszonkowej. Stary (zgodny z oryginałem) system wciąż będzie dostępny dla tych, którzy chcą grać zgodnie z zasadami oryginału. Zmiany Akortunova sprawiają, że silnik nie będzie wyliczał szansy powodzenia na podstawie wartości, ale na podstawie wagi. Będzie także możliwe wkładanie przedmiotów do kieszeni. Funkcja jest jeszcze w fazie rozwoju, więc może ulec jeszcze zmianom.

Crassel (crussel187 na githubie), kolejny nowy deweloper, pracował nad implementacją widoku znad ramienia. Ma już działający prototyp, brakuje jedynie kilku detali. Pracuje także nad wsparciem animacji dla formatów natywnych dla naszego silnika graficznego, osgb/osgt. Czas pokaże, czy się uda, ale jeśli tak, to będzie to oznaczało wiele nowych możliwości dla OpenMW.

Drummyfish, również nowy deweloper, poprawił shader wody poprzez redukcję pewnych artefaktów (białych linii) widocznych wzdłuż linii brzegowej, oraz dodał kręgi na wodzie jako efekt uderzania kropel deszczu w taflę wody. Ta funkcja jest już dostępna w wydaniach nocnych, w gałęzi głównej. Jakby tego było mało, Drummyfish kontynuuje prace nad doskonaleniem cyfrowej wody, dążąc do przebudowy systemu cząsteczek deszczu i śniegu. Obecnie deszcz w OpenMW działa tak, że deszcz pada tylko nad graczem, jak gdyby z małej chmurki będącej nad jego głową. Jeśli Drummyfish zrobi to, co zamierza, gracz nie będzie już prześladowany przez niby-chmurkę, a opady będą generowane w sposób bardziej realistyczny. Chwilowo jest jednak kilka przeszkód natury technicznej.

Thunderforge już nie jest nowy. Gdy dołączył do forum przyszedł jak prorok, przynoszący niewygodne prawdy, które musiały zostać wypowiedziane. Wzywał społeczność do pokuty, by lancher był bardziej przyjazny użytkownikom. Rozpoczął pracę nad tym, i w niedalekiej przyszłości będzie w nim można zobaczyć linki kierujące do sklepów, gdzie można nabyć oryginalną grę Morrowind, gdybyśmy czasem jej nie mieli. Sposób i konieczność realizacji tej funkcjonalności są wciąż przedmiotem debat tak więc upłynie jeszcze trochę czasu, nim wejdzie ujrzy on światło dzienne.

AnyOldName3 również nie jest nowy. Znacie go z ostatniego posta. Wciąż pracuje nad implementacją cieni, która wciąż nieco kuleje, ale jest coraz lepiej. Jak dotąd, wpływ na wydajność jest znikomy.

Oto film pokazujący nwoe cienie w mniej dziwacznej sytuacji. Przez „mniej dziwaczną” sytuację należy rozumieć taką, w której sprawują się nadzwyczaj dobrze. W innych przypadkach wyglądają nieco dziwnie, ale dobrze idzie, prawda?

Chris/kcat to weteran. Scrawl dał nam fundament w postaci funkcji odległego lądu, natomiast Chris/kcat wznosi na nim budynek. Planuje dodać funkcje pozwalające łatwiej modyfikować dystans mgły i sprawić, by ta wyglądała lepiej z odległym lądem. Jeśli się uda, to zmiany te mają szansę znaleźć się w następnym wydaniu.

Jak wspomniano w poprzednim poście, Aesylwinn wrócił do pracy nad CS-em. Połączył siły z PlutonicOverkillem, by pracować nad możliwością pełnej edycji siatki terenu. Cel nie został zrealizowany, jednakże ostatnio jego praca trafiła do gałęzi głównej, a jest to możliwość edycji tekstur terenu. Funkcja ta będzie dostępna w OpenMW 0.43!

Ostatnia sprawa. Wszechmocnego scrawla tak zirytował stary system okienek (tych w grze), że kompletnie go przebudował, wzbogacając go o nowe funkcje. Jakie? Na przykład możliwość obsługi menu za pomocą samej klawiatury. Ta-dam! Można to przetestować w wydaniach nocnych lub zaczekać na OpenMW 0.43.

Chcesz się przyczynić dla sprawy?

Mamy od niedawna nieco więcej deweloperów, ale nie zaszkodzi mieć więcej. Jeśli uważasz, że Twoje doświadczenie programistyczne może nam pomóc, ale nie wiesz, jak zacząć, zacznij lekturę od tej dokumentacji:

Developer reference

Może zainteresują Cię strony poświęcone architekturze silnika, GUI (MyGUI), albo silnikowi renderującemu (OpenSceneGraph).

A jeśli nie jesteś programistą? Zawsze przyda się pomoc w testowaniu. Uruchom grę i zgłaszaj błędy.

Potrzebna jest także pomoc w sortowaniu zgłoszeń. Przydatna jest tu znajomość organizacji projektu, a więc trzeba mieć z nim pewne obycie. Opis tej posady.

To tyle na dzisiaj. Jeśli wszystko pójdzie dobrze, nasz przezacny edytor wideo powróci za tydzień, lub coś koło tego. To znaczy, że już niedługo wydanie 0.43. Zostańcie z nami!

Zapraszamy do komentowania tutaj.
Wielkość, która nadejdzie… 2017-09-09 - Vedyimyn

Minął nieco ponad miesiąc od wydania OpenMW w wersji 0.42.0. Jeśli przypomnicie sobie, kiedy wydano wersję 0.41.0, to zauważycie, że stworzenie nowego wydania zajęło nam osiem miesięcy, co było jednym z największych odstępów pomiędzy wydaniami, pomimmo że nie różniło się ono znacząco pod względem objętości od wydań je poprzedzających.

Bynajmniej nie oznacza to, że deweloperzy OpenMW się obijali. Albo że przez te osiem miesięcy uczyniono mniejszy postęp niż zwykle. Powodem opóźnienia było to, że nasz komputer od edycji wideo miał awarię w wysoce niefortunnym czasie. Gdy dyskutowaliśmy, czy wydanie powinno mieć miejsce pomimo braku wideo, ustaliliśmy, że wstrzymamy je do czasu rozwiązania problemów ze sprzętem. W końcu jeśli ktoś chce zagrać w najnowszą wersję OpenMW nie musi czekać na wydanie, skoro może skorzystać z wydań nocnych, który ostatnio uczyniliśmy łatwiej dostępnymi poprzez podanie linku na stronie „Do ściągnięcia”.

Dobra wiadomość jest taka, że o ile proces wydań został zawieszony, o tyle praca nad następną wersją już ruszyła, i znaleźliśmy się w takim punkcie, że mogliśmy wydać wersję 0.43.0 dzień po wersji 0.42.0. W momencie pisania tych słów mamy 85 zamkniętych problemów, co czyni to wydanie większym niż poprzednie. Spójrz na nasz bugtracker, by zobaczyć szczegóły.

Nieco ponad miesiąc temu byliśmy również świadkami wydania TES3MP w wersji 0.6.0, a nieco później łatki 0.6.1, z widokami na następną wersję już wkrótce, w połowie września. Odkąd TES3MP zaczęło bazować na silniku OpenMW, otrzymaliśmy część uwagi mediów i przybyło nam chętnych na deweloperów.

Dzięki nowym ludziom na pokładzie, wzrosło zainteresowanie poprawą dokumentacji kodu. Jeden z nowych programistów zaczął badać, czy byłoby możliwe rozszerzenie animacji .OSG lub sprawienie, by było możliwe czytanie przez OpenMW innych plików .nif, poza tymi z Morrowinda. Scrawl wypuścił swoje niekompletne eksperymenty z cieniami, a stary człone zespołu, o pseudonimie AnyOldName3 próbuje sprawić, by zaczęły działać. Chociaż nagli mnie, bym o tym wspomniał, nie ma gwarancji, że mu się uda. Powrócił także Aeslywinn, który dawniej włożył sporo pracy w OpenMW-CS i wrócił tam, gdzie skończył.

Jego nowa funkcja, już włączona do OpenMW, daje moderom komfort przeładowywania zasobów w OpenMW-CS bez przeładowywania programu. Jego następnym przedsięwzięciem wydają się być rekordy lądu, co byłoby krokiem naprzód w kierunku możliwości edycji krajobrazu, głównej brakującej funkcji OpenMW-CS.

Co prawda mamy wystarczająco dużo zamkniętych zgłoszeń, by wydać słusznych rozmiarów nową wersję, nie rozpoczęto jeszcze procesu wydawania nowej wersji, w końcu dopiero wypuściliśmy wersję 0.42.0. Prawdopodobnie nadchodzące wydanie będzie dużo większe, niż zwykle, i nastąpi za około dwa miesiące, ze wspomnianymi rekordami lądu i innymi funkcjami, nad którymi trwa teraz praca. Ponadto, obszary, które trwały w stagnacji przez ostatnie kilka miesięcy, znów są w widoczny sposób rozwijane, a przyszłość projektu wygląda całkiem dobrze.

Zapraszamy do komentowania tutaj.
OpenMW 0.42.0 2017-08-02 - Vedyimyn

Zespół OpenMW ma zaszczyt ogłosić wydanie wersji 0.42.0! Do pobrania, jak zwykle, na zakładce Do ściągnięcia, dla wszystkich systemów operacyjnych. Przepraszamy za opóźnione wydanie, ale chcieliśmy, by wszystko było możliwie najlepiej uporządkowane. W tej wersji do OpenMW powraca funkcja odległego lądu! DestinedToDie napisał instrukcję jej uruchamiania w jednym z poprzednich wpisów. Poniżej znajduje się w minimalnym stopniu przetłumaczona lista nowości i poprawek.

Zobacz także filmiki dokumentujące nowe wydania OpenMW i OpenMW-CS, autorstwa czcigodnego Atahualpy

Znane problemy:

Nowe funkcje:

Poprawki błędów:

Zapraszamy do komentowania tutaj.
Multiplayer w OpenMW 2017-08-02 - Vedyimyn

multiplayer: „M’Aiq. nie zna tego słowa. Chcesz, żeby inni pomagali ci w zadaniach? Tchórz! Jeśli musisz, poszukaj Argonianina Im-Leeta, albo może wielkiego Norda, Rolfa Wielkiego. Z pewnością będą chcieli do ciebie dołączyć” – M’Aiq Łgarz, (tłum. własne)

M’Aiq mógł nas drażnić od 2002, ale teraz rzeczywiście można spotkać wspomniane przez niego postaci. Wszystko to dzięki siostrzanemu względem OpenMW projektowi TES3MP i jego deweloperom Koncordowi and Davidowi Cernatovi. Wcześniej tes3mp umożliwiał walkę pomiędzy graczami, ale ostatni patch dodał synchronizację npc-ów. Jakby tego było mało, dodano także synchronizację organizacji, do jakich należy gracz, dziennika, czasu, wtyczek… Obecnie moża grać w niemal całą grę, ale skrypty wciąż działają lokalnie, a obiekty utworzone za pomocą alchemii/zaklinania/tworzenia zaklęć nie są synchronizowane. Pobierz tes3mp w wersji 0.6.0 i koniecznie przeczytaj ogłoszenie developerów tutaj!

Instalacja jest bardzo łatwa. Jeśli masz już zainstalowane OpenMW, musisz tylko pobrać tes3mp i wypakowac archiwum do wybranego folderu. Jeśli nie masz jeszcze OpenMW, wystarczy uruchomić instalator i wskazać mu plik morrowind.esm. Kolejnym krokiem jest wystartowanie serwera, tj. pliku tes3mp-server.exe. Następnie musisz musisz otworzyć stosowne porty, by inni graczy mogli dołączyć do gry, korzystając np. z Hamachi. Można też dołączyć do serwera, korzystając z tes3mp-browser.exe.

Jak widać, do wyboru jest kilka opcji. Serwer moż być prywatny, chroniony hasłem, lub ogólnodostępny. Może mieć listę wtyczek wymaganych, by dołączyć do gry. Administrator może wymagać, by pliki .esp miały wymaganą sumę kontrolną, lub wymagać jedynie, by miały tę samą nazwę. Może on też zablokować konsolę na całym serwerze, lub tylko konkretnym graczom, jeśli to konieczne. Za pomocą skryptu LUA może zmienić poziom trudności lu miejsce startu dla graczy dołączajacych do serwera.

Skrypty LUA dają spore możliwości. Podczas testów alpha jeden z moderów utworzył za pomocą skryptów nowy tryb gry: battle royale. Polega to na tym, że gracze zaczynają w pomieszczeniu dla oczekujacych. Gdy dołączy minimum trzech graczy, rozpocznie się 60-cio sekundowe odliczanie. Gdy ten czas upłynie, gracze są teleportowani do losowych miejsc na Vvardenfell, mając 25 minut na zebranie uzbrojenia, po czym są nagle teleportowani na arenę, gdzie muszą zrobić z niego użytek. Wyobraźcie sobie, ile jest tutaj możliwości!

Ale załóżmy, że zaczynam zwykłą grę w tes3mp. Pierwsze, co napotykam, to Pelagiad i okienko pytające mnie o imię i hasło. Po ich wsprowadzeniu, informacja zostaje wysłana na serwer, to tworzy plik .json przechowujący informację o postaci. Chwilę później podaję rasę, klasę, znak zodiaku, po czym jestem teleportowany do Balmory.

Po pomyślnym zalogowaniu zostają zsynchronizowane informacje o wszystkich organizacjach, reputacji w organizacjach i zadaniach. Jeśli jakiś gracz dołączył do gildii złodziei, ja również będę do niej należał. Jesli ktoś został arcymagiem w gildii magów, każdy będzie arcymagiem. Jeśli ktoś zaczął quest, będę miał informacje z jego dziennika w swoim. Otwieram dziennik i widzę, że gracz wykonał zadanie ze szczurami dla gildii wojowników, ale nie zgłosił się jeszcze po nagrodę.

Ruszam więc do gildii wojowników. Gdy wchodzę do budynku, server wysyła mi plik cell.json opisujący zmiany pomieszczeń dokonane przez graczy względem stanu domyślnego. Np. fakt uśmiercenia NPC, upuszczony lub zabrany przedmiot. W moim wypadku było to zabranie wszystkiego ze skrzyni z zapasami. To w końcu multiplayer. Oddaję quest i dostaje awans.

Przyjmuję następne zadanie, związane ze złodziejami jaj. Czuję się za słaby na to zadanie, więc proszę na czacie o wsparcie. Zgasza się dwóch graczy: jeden z pingiem 356, drugi z 72, ja mam 301. Gracz drugi zostaje gospodarzem celi, bo ma najniższy ping. Oznacza to, że jeśli atakuje nas zwiadowca kwama, gracz 2 (gospodarz) wysyła informację na serwer, skąd informacji przechodzi do gracza pierwszego i do mnie. Tak działa synchronizacja NPC i stworów.

Po wykonaniu zadania jesteśmy ranni w różnym stopniu. Gracz 1 wymaga siedmiu godzin do wyzdrowienia poprzez odpoczynek, gracz 2 tylko jednej, ja trzech. Jak to rozwiązać? Odpoczywam przez 3 godziny, tak jak to jest normalnie w grze, ale po wypoczynku mój klient ponownie synchronizuje się z czasem serwera.

Wracamy do Balmory. Moi kumple byli na tylie sprytni, że wzięli ze sobą zwoje interwencji Almsivi. Ja nie byłem dość sprytny… Zamiast biec do Balmory użyłem komendy /suicide w oknie czatu, by skrypt LUA zakończył mój żywot. Ale nie przejmujcie się. Wróciłem do życia w najbliższej świątyni lub kaplicy, czyli właśnie w Balmorze.

Wracamy do gildii wojowników po nagrodę. Zadanie może być wykonane tylko raz, więc nagrodę otrzymuje tylko jeden gracz. Dzielimy się więc złotem. Podobnie każdy przedmiot może być podniesiony tylko raz. Administrator serwera może jednak usunąć wybrane pliki .json by zresetować pomieszczenie lub obszar świata, co umożliwi graczom wykonanie zadań lub podniesienie przedmiotów, które przegapili.

Zaczynam bić się między sobą. To nie był dobry pomysł, ponieważ mieszkańcy miasta zaczęli zgłaszać nasze nieprawe zachowanie! Strażnik łapie mnie i stawia ultimatum: pieniądze albo więzienie. Czas nie może być zatrzymany w środowisku multiplayer, tak więc pozostali dwaj gracze mogą kontynuować grę, podczas gdy ja załatwiam sprawę ze strażnikiem. Może, nie wie, że jestem Nerevaryjczykiem (w każdym razie jednym z nich i przerywanie mojej pracy kosztuje.

Zabieram zbroję martwego strażnika i zakładam ją. I wtedy zauważam, że… wyglądam identycznie jak strażnik Hlaalu. Wyłączam caps-locka i zaczynam chodzić jak NPC. Nikt nie zauważy, że to podróba, dopóki nie podejdzie zbyt blisko, a ja nie wyciągnę ostrza. Jeśli zawitasz kiedyś do Balmory, pamiętaj, że ja tam będę. Będę tam chodził. Chodził jak NPC. Gotowy do ataku, gdy nie będziesz się spodziewać.

Patrząc, jak daleko zaszedł projekt tes3mp w stosunkowo krótkim czasie, ośmielę się stwierdzić, że zostało pokazane, iż implementacja trybu wieloosobowego i podobnych projektów na bazie OpenMW jest preferowaną ścieżką. Ludzie czekali wiele lat ma fanowską implementację jakieś formy trybu multiplayer w grach takich jak Morrowind, Oblivion, Skyrim, Fallout 3, Fallout 3 – New Vegas, a tes3mp jest pierwszym projektem, który dostarcza nie tylko synchronizację NPC, ale także górę innych możliwości, których inne projekty jeszcze nie oferują. Wystarczyło dwóch deweloperów i silnik Open Source, by osiągnąć to, z czym zmagają się profesjonalni programiści bazując na zamkniętym silniku.

OpenMW przez długi czas dążyło do tego, by mogły powstać projekty takie jak ten, więc to wielka radość, że na jego bazie powstał z powodzeniem projekt multiplayer. Marzenie o graniu w Morrowinda z przyjaciółmi spełniło się! Ale nie zamierzamy na tym poprzestać. Programiści tes3mp planują dalej rozwijać projekt, jak również pomagają rozwijać samo OpenMW. Każdy, kto chciałby utworzyć swój fork OprnMW i utworzyć projekt na jego bazie, tak jak uczynili autorzy tes3mp jest mile widziany.

Zapraszamy do komentowania tutaj.