Fork me on GitLab
O mój Boże! Post za burtą! 2012-10-29 - sir_herrbatka

Witajcie ponownie moi drodzy (nie sądzę by czytała mnie choćby nawet jedna niewiasta, ale któż to wie…).

Prace nad nową implementacją alchemii zostały niemal zamknięte ─ niestety dzięki ofiarnej pracy testerów na światło dzienne wyszły pewne niewygodne błędy których istnienia nie sposób pominąć. Można oczywiście potraktować to inaczej, podejść do kwestii z otwartymi ramionami; optymistycznie i z uśmiechem na twarzy. W takiej różowo-pluszowej wizji świata odnalezienie błędów w oprogramowaniu to nic innego jak tylko pierwszy, a więc naturalnie najważniejszy krok do ich usunięcia.

Ponadto Zini wciąż pracuje w gałęzi „Death”. Niestety w tej gałęzi także mamy zdecydowany nadmiar ciekawych zagadnień do rozgryzienia, i to pomimo wysiłków Ziniego.

Gus tymczasem powrócił do nie dawno zakończonej funkcji transportu pomiędzy miastami. Do uprzątnięcia był kod dialogów.

Greye tymczasem zajął się pracą w gałęzi „Storedevel” ─ jak sama już nazwa sugeruje nie znajdziemy tam żadnych ciekawych, widowiskowych funkcji widocznych z perspektywy gracza, ale jednak jest to praca ważna; fundamentalna dla całego projektu.

Chris tymczasem wciąż zajmuje się animacjami. Końca tego zadania wciąż nie widać, za to jeśli obejrzeć się za siebie zobaczymy wiele już zostało dokonane. Jak już tłumaczyłem ten problem jest skomplikowany od strony technicznej i nie sposób objaśnić w przystępny sposób listę zadań do wykonania.

Niestety uwaga to odnosi się do coraz to szerszego zakresu prac nad projektem.

Tymczasem Eli2 zajmuje się edytorem. Nudziło mu się więc stworzył port do Qt5 z czego możemy wysnuć wniosek o tym, że zadanie nie było trudne. W istocie jednak Qt5 nie ma dużego znaczenia dla OpenMW, jeszcze przez wiele lat będziemy musieli opierać się na starszych bibliotekach by wspierać dystrybucje LTS. Z ważniejszych rzeczy: serializer Stopgap został zastąpiony przez ten z Qt.

Pvdk powrócił do prac nad starterem, dzięki czemu powróciły profile!

No i po co te tytuły…? 2012-10-21 - sir_herrbatka

Witajcie!

Nasz wspaniały edytor o przygnębiająco przewidywalnej i mam (złudną) nadzieję, że tymczasowej nazwie OpenCS wciąż pomaleńku się rozwija. Aktualnie Eli2 koncentruje się na fundamentach: ładowaniu i zapisywaniu projektów. Oczywiście ważne jest by zaprojektować podstawowe elementy jak najlepiej, w szczególności dla tego, że co prawda na razie niektórzy spośród Was mogą odnieść wrażenie niemrawego postępu; ale w rzeczywistości edytor może wzbogacić się w funkcje szybko ─ o ile rzecz jasna nie będzie się to odbywać drogą budowy na prowizorce.

Scrawl, zaznaczcie te epokowe wydarzenie w kalendarzu, nie pracuje aktualnie nad shaderami, ani niczym związanym z grafiką. Zamiast tego przyłączył się do Ziniego i jego prac nad nową, w zamierzeniu już poprawną implementacją alchemii. Kwalifikacje scrawla są trudne do podważenia: to właśnie ten programista jest autorem pierwotnej implementacji, a ponadto w ramach swojego udziału w nasz wspólny projekt stał się prawdziwym znawcą MyGUI ─ co jest o tyle istotne, że nowa implementacja alchemii wciąż jest częściowo pozbawiona interfejsu graficznego, a poza tym posiada błędy które należy poprawić.

Z ciekawostek: kompilacja OpenMW na komputerze scrawla zajmuje w przybliżeniu dwie minuty. 😉

Zini oprócz tego przejął zadanie „Death”. Spokojnie: jeśli z waszego komputera zaczyna się wydobywać trupi fetor, a powietrze przeszywa lodowaty powiew zimna to wiedzcie, że może i coś się dzieje ale nie z naszej winy ─ te funkcje są w planach dla dopiero OpenMW 6.6.6. Z pewnością WeirdSexy nie może się doczekać możliwości odkrycia konwencji thrillera, filmu kryminalnego, a może także i horroru ─ wiadomo, że bez trupów w takich pozycjach się nie obejdzie.

Gdyby tak jeszcze animacje zaczęły naprawdę działać… Chris pracuje nad tym niekoniecznie banalnym zadaniem. Co prawda OpenMW jest w stanie odtwarzać animacje, ale jednak brak jest jakiejkolwiek integracji z fizyką. Oczywiście oznacza to tyle, że bohater gry nie chodzi, a sunie po ziemi ─ i powinien się cieszyć bo pozostałe postacie w grze nie potrafią nawet i tego.

Lgro który żadnego bota się nie boi i serwerami włada zajął się tymczasem książkami. Otóż jak do tej pory strony ksiąg znajdywanych w grze nie były wyświetlane poprawnie, zwłaszcza jeśli zawierały obrazki. Zadanie pozornie nie stanowiło wyzwania ─ jednak zaskoczyło swoją złożonością i tak o to możemy powiedzieć tylko tyle, że pierwsze niepowodzenie jest już za nami, a teraz bogatsi o nowe doświadczenie pokonamy i tą przeszkodzę.

Kolejną skomplikowaną historię pełną zaskakujących odkryć przedstawia stan prac nad optymalizacją szybkości wczytywania nowych komórek w grze. U niektórych testerów problem jest wyraźnie widoczny, u innych jednak nie ─ więc dopiero teraz zini postanowił wprowadzić zmiany mające na celu usprawnienie procesu. Niestety zmiany nie przyniosły oczekiwanych rezultatów. Aktualnie sytuacja jest więc bardzo niejasna, a dokładny plan działań wciąż dopiero musi powstać.

Kryzys się skończył! Jest post! 2012-10-21 - sir_herrbatka

W zeszłym tygodniu nie było cotygodnika.

Oczywiście nie chodziło zaledwie o sprawdzenie czy ktokolwiek zauważy brak, jest to co prawda interesujące zagadnienie, ale jednak całkowicie oddzielne od moich problemów z komputerem.

Trudności udało mi się rozwiązać, ale wpisu napisać nie zdążyłem. Żałuję teraz, że nie zdecydowałem się zrobić tego w tygodniu, bo mogłem napisać artykuł który może i byłby spóźniony, ale jednak bez nie czułbym presji objęcia w jednym tekście dwóch tygodni.

Nie zrobiłem tego, a teraz mogę mieć tylko do siebie pretensje ─ tak można, i trzeba podsumować całą sytuację. Starczy więc tego zbędnego roztrząsania porażki, przejdźmy do INTERESUJĄCYCH wiadomości. Zachowajcie jednak świadomość niemal pewnej niekompletności tego konkretnego cotygodnika.

Scrawl ukończył okno tworzenia zaklęcia, a nawet odrobinę więcej bo dzięki dobremu planowaniu, w przyszłości przynajmniej część kodu będzie mogła zostać wykorzystana przy implementacji zaklinania przedmiotów. Gałąź została włączona do main.

Gus kontynuował prace nad szybką podróżą. Mamy już odpowiednie ceny, a nawet działające GUI; o tak moi drodzy: podróżowanie działa.

PVDK majstruje przy starterze OpenMW, sposób sortowania plików gry na liście uległ zmianie i jest teraz bardziej uporządkowany i przejrzystszy. Tylko co z tego, skoro sam silnik wciąż nie jest w stanie załadować niczego ponad jeden plik główny?

Greye i Cary Cohen podjęli się zadań dotyczące mechanizmów ukrytych w trzewiach silnika, i choć jako takich nie eksponowanych w postaci funkcji, to jednak niezbędnych dla wielu elementów gry.

I tak o to Greye pracuje nad dodaniem możliwości tworzenia w trakcie gry (a nie tylko ładowania z pliku) nowych elementów ESM. Jest to bardzo ważna funkcja, i to na wiele sposobów ─ dość powiedzieć, że bez niej nie sposób wprowadzić możliwość zmiany rasy postaci gracza.

Tymczasem Cary Cohen wprowadza zmiany w ESMTool. Pojawiły się etykiety zrozumiałe dla ludzkich istot, a ponadto zdumpowanie rekordów za pomocą ESMTool dostarczy więcej informacji.

Zini postanowił zwalczyć niestandardowe rozszerzenia GCC. Przy okazji wprowadził także flagi które mogą przełączyć kompilator w tryb C++11, to jest jeszcze-ciepły-i-pachnący-nowością standard C++. Oczywiście nie oznacza to jeszcze, że dopuszczalne jest stosowanie C++11 w OpenMW; standard staje się prawdziwym standardem nie wcześniej niż gdy zaczyna być poprawnie przekształcany do kodu maszynowego przez powszechnie używane kompilatory. Innymi słowy: w naszym wypadku przejście z całą pewnością nie nastąpi przed drugą połową przyszłego roku.

A tak na marginesie: zwróciliście uwagę na margines? Jest tam bardzo Web-dwa-zerowa chmurka tagów. Od tej pory taki np. Scrawl jest nie tylko Davidem Bowie programowania ale także tagiem na naszym blogu!

I tak o to minął wrzesień ─ sam nawet nie wiem kiedy. Może ktoś go ukradł i zakopał?

Nie, oczywiście, że nie ─ w końcu udało się ukończyć 0.18.0: wiele wnoszące, pachnące jeszcze nowością wydanie, które niezbicie dowodzi istnienie września.

Możesz nie wierzyć ─ masz ku temu podstawy, choćby negując fakt ukończenia 0.18.0; bo wszak nie ma ogłoszenia na blogu, a i na google code brak binarek. Ale w istocie 0.18.0 jest ukończone, jedynie nie wydane.

Problem polega na tym, że dostęp do google code ma jedynie raevol który to akurat gdzieś wyjechał na parę dni i jest nieosiągalny. Oczywiście może być to jedynie element spisku…

Wracając jednak do wydarzeń bieżących i przypuszczalnie najbardziej interesujących: w końcu mamy własny styl forum!

Dawno, dawno temu, nad stylem forum pracował Necrod (ten sam który jest autorem logo widocznego u góry strony) ale nie osiągnął zbyt wiele, a nasze forum wciąż miało wygląd co najmniej kontrowersyjny. Sytuację rozwiązał jedd który wypolerował całość na wysoki połysk.

Wejście na forum jest teraz o wiele przyjemniejsze: ciepłe kolory, zaokrąglone rogi, świetna integracja ze stroną główną… zresztą polecam odwiedzić forum i przekonać się na własne oczy.

Oprócz tego Lgro zainstalował nowy i, o dziwo, skuteczny plugin anty-spamowy. Do tej pory codziennie musieliśmy usuwać boty spamujące ofertami powiększania penisa oraz inną klasyką gatunku… ale nie tylko! Okazuje się, że do zapaskudzania forów internetowych posuwają się nawet biura podróży.

Efekt działania pluginu można określić jednym słowem: błogość.

Wiem, wiem… „Talk is cheap: show me the code!”. Właśnie przechodzę do sekcji o programistycznych wyczynach zespołu.

Scrawl dodał podnoszenie poziomu umiejętności po przeczytaniu książki, a ponadto zaczął pracować nad odtwarzaniem filmów obecnych w grze ─ choć nie jest ich wiele to jednak pozwalają lepiej wczuć się w bohatera gry. Poza tym, jak zwykle naprawianie błędów, jak choćby tego który uniemożliwiał uaktualnienie globalnej mapy jeśli ta była ustawiona jako widoczna również w trakcie gry.

Gus zaś zajął się szybką podróżą znaną z morrowinda: łaziki, łodzie, gondole, teleportacja w gildii magów; wszystkie działają na tej samej zasadzie. Część z was może wskazać na teleportację jako wyjątek: jako jedyna odbywa się natychmiast i niezależnie od dystansu jaki przyjdzie przebyć kosztuje zawsze tyle samo. W rzeczywistości silnik morrowinda nie jest w stanie określić odległości dzielącej dwa wnętrza i dla tego w takim przypadku zakłada minimalną cenę bazową oraz ustala czas podróży na zero godzin. Oczywiście jedynymi usługodawcami szybkiej podróży rezydującymi w pomieszczeniach są magowie w Gildiach, można więc odnieść wrażenie, że morrowind jest bardziej skomplikowany niż w rzeczywistości.

drpaneas to nowy programista który zajął się swoim pierwszym zadaniem: implementuje „failed action”. Zadanie nie jest bardzo trudne, ani też wyjątkowo duże ale mimo to ważne i wymagane przez wiele innych, wciąż otwartych zadań.

Mark76, osoba która swojego czasu tworzyła projekt alternatywny względem OpenMW (Crystal Scrolls) powróciła na nasze fora. Kilka miesięcy temu Mark76 przyłączył się do naszego projektu i zajął się ambitnym zadaniem wspierania architektury pluginów oraz ładowania wielu esm jednocześnie. Co prawda prototyp został ukończony ale dowiódł jedynie na jak wiele sposobów nie jesteśmy gotowi do wprowadzenia tej funkcji, i do dziś wciąż nie posunęliśmy się szczególnie daleko. Zini sądzi, że konieczne są zmiany, rozbicie tego kolosalnego wyzwania na mniejsze, dające się przełknąć kawałki.

Oprócz tego, Zini zajmuje się pracą nad nową implementacją alchemii. Przepisanie było planowana już od dawna, faktycznie od samego początku, a tym samym scrawl nie przejmował się szczegółowym projektowaniem swojego rozwiązania.

Greye ciągnie stare, nudne, ale ważne jak jasna cholera zadanie „record saving”. Ta funkcja jest kluczowa zarówno dla samej gry jak również dla edytora.