Strona 7 z 9

: 29 października 2017, 01:58
autor: ghasta
Suriel napisał(a):

Czemu w tekscie jest zdanie '"pamietaj by wymazać z karty..." . Czy nie powinien robić tego automat?
Ależ oczywiście, że automat to robi :). A jak myślisz - skąd mechanizm wiedziałby, że postać nie ma już wody co powoduje większą stratę wytrzymałości - czyli drugi zrzut ekranowy? B)

Teksty paragrafów jeszcze nie są poprawione i jest to aktualnie najmniejszy problem. Uwierz, gorsze są te nagłe zmiany mechaniki per jakichś paragraf gdzie wszystko staje na głowie. Skutecznie utrudnia to ich obróbkę. W tej chwili dotarłem od pierwszego do 119 paragrafu, ale po drodze mam odznaczonych 19 :) paragrafów, które zachowują się w niestandardowy sposób np. dziwne zdarzenia w walce lub niestandardowy sposób zbierania przedmiotów.

Ale przynajmniej udaje mi się utrzymać tempo prac na akceptowalnym poziomie co nie zmienia faktu że do końca jeszcze sporo brakuje. Obiektywnie rzecz ujmując stopień zaawansowania prac oceniam na jakieś 25%.

Nie oszukując w najbliższym czasie przyda mi się pomoc w poprawieniu tekstu paragrafów po kątem Twojej uwagi - czyli zbędnej treści. I jeśli już ktoś byłby chętny to zrobić to musi być zwarty i gotowy wykonać zadanie możliwie szybko. Ew kilka osób, tak żeby każdy wziął na siebie np. po 50 paragrafów - obrobienie takiej ilości tekstu zajmie max 1-2h wieczorkiem.

: 29 października 2017, 08:53
autor: Suriel
Ok rozumiem. Jestem ciekawy efektu. Ciekawy skomplikowany silnik.

: 30 października 2017, 00:57
autor: ghasta
Oj, jest skomplikowany, możesz mi wierzyć na słowo.

Poniżej przykład poziomu komplikacji:
W ramach paragrafu 32 mamy:
1. walkę z przeciwnikiem
2. podczas której otrzymujemy - na czas walki - ograniczenie do zdolności ataku i
3. jeśli walka trwa do 5 rund mamy wyjście A
4. jeśli walka trwa więcej niż 5 rund mamy wyjście B
5. jeśli przegrywamy mamy wyjście C

;-)
I, co najważniejsze, aktualny silnik obsługuje już taką sytuację.

Gwoli ścisłości bo nie napisałem ;) (i chwalenia się)

Działanie takich paragrafów nie jest zaszyte na twardo w kodzie pod postacią jeśli paragraf 32 to zrób walkę tak ale ogranicz ją śmak, a wyjście daj takie jeśli runda x/y/z ponieważ nie dałoby rady tego ogarnąć w kodzie. Tak skomplikowanych paragrafów jest naprawdę dużo i pisanie kodu działający tylko w ramach jednego paragrafu jest czystą stratą czasu.
Tu (w skrócie) po otworzeniu paragrafu i w zależności od jego konfiguracji, rejestrowane są wydarzenia, na które później reagują odpowiednie miejsca w kodzie. W Sladumie też to trochę tak działało, ale elastyczność rozwiązania była niewielka, nie miała możliwości typu: zakończenia walki w wybranej rundzie, opcji ucieczki z walki, wyłączania użycia przedmiotów w czasie walki. Nowy silnik potrafi to zrobić.
Ale w sumie zawsze tak jest z pierwszym podejściem do problemu. Drugie zazwyczaj jest lepsze.
Dość dobrze przejrzałem możliwości jakie daje javascriptowy framework Angulara i w o wiele większym stopniu je wykorzystuję. Kod jest bardziej skomplikowany, a jednocześnie łatwiej definiować niektóre elementy czy specjalne wydarzenia. Jak znajdę czas to opiszę to dokładnie na blogu.

: 30 października 2017, 12:18
autor: Suriel
Jak ci nikt z tymi paragrafami mie pomoże to daj znać. Wprawdzie teraz tygodnie mam takie że w soboty kończę ok 23:00 i nosem się już podpieram byleby iść dalej ale..

: 30 października 2017, 13:00
autor: ghasta
Dzięki. Jeszcze trochę czasu minie zanim to nastąpi.
A co do możliwych godzin zajmowania się hobby to mam podobnie. Zresztą widać to w godzinach moich wpisów: godzina 0:51, 00:57 , 01:58 ....

: 31 października 2017, 01:21
autor: ghasta
I znowu piszę o jakiejś absolutnie głupiej godzinie:)
ALE
Dojechałem z przerabianiem do 200 paragrafu. Z tego ok. 40 paragrafów ma różne drobne problemy (np. źle generujący się log z walki czy niepotrzebnie dostępne wyjścia).

W załączeniu pierwszy zrzut walki. Walka odbywa się w cyklu sterowanym przez silnik (można go zatrzymać).
Na zrzucie pierwszym i drugim widać jak pomiędzy rundami zmieniają się warunki walki, zrzut trzeci to zakończenie potyczki.

: 02 listopada 2017, 00:03
autor: ghasta
Udało mi się dojechać do definicji 350 paragrafu. Czyli ostatniego paragrafu gry.
Z pewnej ciekawej przyczyny w ciągu jednego dnia udało mi się przerobić 150 paragrafów. Autor (nieodżałowany Joe Dever) do jakiegoś 150 paragrafu zmieniał lub utrudniał narzucone przez siebie zasady gry. Skutecznie utrudnia to kodowanie.
Powyżej 150 paragrafu uspokaja się i przestaje kombinować. W efekcie najwięcej błędnych lub działających nieprawidłowo paragrafów jest pomiędzy 1 a 150. Ostatecznie moje zapiski wskazują, że na zakodowanych 350 paragrafów 299 paragrafów jest OK zaś 51 zawiera różne błędy.

Na szczęście pojedyncze poprawki likwidują błędy w kilku paragrafach pod rząd więc zalepienie tego pójdzie szybko.

Jako, że ilość paragrafów jest znaczna (i gra jest duża) zrobiłem ... Edytor paragrafów w ramach którego można zmienić tekst paragrafu i część jego konfiguracji :D. Muszę go jeszcze doszlifować, ale z potrzeby chwili powstało bardzo ułatwiające pracę rozwiązanie.

Po poprawieniu podstawowych, blokujących rozgrywkę błędów, biorę się za ulepszacze!

Na zrzucie z przeglądarki: po lewej widać treść ostatniego paragrafu, a po prawej okno konsoli przeglądarki. Do konsoli logowana jest część informacji jakie mają miejsce w silniku gry i uwierzcie mi - dzieje tam się sporo.

Stopień zaawansowania prac oceniam na ... 45-50% :P Jeszcze sporo kodu powstanie zanim gra będzie spełniała określone przeze mnie założenia.

: 06 listopada 2017, 01:17
autor: ghasta
I znowu piszę o dziwnej porze ALE:
Ostatnimi wieczorami poprawiam błędne paragrafy oraz dodaję różne drobne funkcjonalności. Zgodnie z moimi zapiskami pozostało mi 25 paragrafów, w których znajdują się jakieś błędy np. nie mają pełnej konfiguracji lub (zwykle) źle wyświetlają dostępne wyjścia.

Moja walka z javąscript zaowocuje co najmniej dwoma większymi wpisami na blogu spowodowanymi opracowywaniem mechanizmu rozpoznawania przedmiotów oraz mechaniką prowadzenia walki. Rozgryzienie problemów związanych z tymi elementami silnika kosztowało mnie kilka dobrych godzin pisania kodu.
Przy okazji w stronę monitora poleciało sporo przekleństw :)

idę spać bo rano do pracy

: 06 listopada 2017, 19:09
autor: Araven
Super fajnie to brzmi i wygląda. A ten Twój kod by dał rade rozstrzygać walki w PBF po wprowadzeniu podstawowych danych obu stron?

: 06 listopada 2017, 20:33
autor: czegoj
Na pewno, problem w tym, że to nie zapisuje się na serwerze, tylko jest po stronie przeglądarki. Dodatkowo musiałby ghasta stworzyć formularz wprowadzania danych, bo bez tego to nie bardzo.

: 07 listopada 2017, 00:55
autor: ghasta
Czegoj ma rację. Jeśli chcesz to z kimś współdzielić - trzeba osadzić to na serwerze + jakiś formularz. Mam i wiedzę i umiejętności na takie zadanie, ale przełożenie na kod przysłowiowo prostej mechaniki walki nie jest trywialnym zadaniem .
Dodatkowo pod jaką mechanikę tworzyć takie rozwiązanie :/
Za dużo niewiadomych. Szkoda energii.


p.s.
A mi zostało już tylko 19 niedorobionych paragrafów. W załączeniu jeden z pokręconych paragrafów: można w nim znaleźć masę różnego rodzaju przedmiotów, trzeba wypić wodę, złapać amunicję...

: 12 listopada 2017, 02:36
autor: ghasta
Ponownie dziwna pora na pisanie, ale spieszę donieść, że pozostało mi do oprogramowania w jakichś sposób jedynie 7 paragrafów z 350.

Poza poprawianiem samych paragrafów zająłem się także:
- oknem postaci - już można otworzyć i przejrzeć charakterystyki
- mapa - też już można podejrzeć
- drobnymi elementami graficznymi - min.: pojawiły się ikonki broni/amunicji/umiejętności
- mniejszymi lub większymi powiadomieniami wyświetlanymi graczowi

Co ciekawe lista TODO (do zrobienia) wydłużyła się o kolejne elementy i z tego powodu odnoszę wrażenie, że nie posuwam się naprzód. Mam nadzieję zdążyć z gierką do końca roku :/ ponieważ zostało jeszcze sporo do zrobienia.

: 14 listopada 2017, 01:36
autor: ghasta
Takie małe porównanie:
Wygląd sprzed miesiąca
Obrazek

I wygląd podpicowany - wszystkie widoczne elementy są oprogramowane

Obrazek


To nie jest jest jeszcze ostateczny wygląd GUI ale bardzo bliski temu co chcę osiągnąć.

: 21 listopada 2017, 09:53
autor: ghasta
Kolejny drobny sukces - pojawiła się opcja zapisu danych postaci i ich odczytu przy kolejnym podejściu. Z takim zabezpieczeniem roguelike - jeśli postać zginęła w walce, to niestety nie ma czego odczytywać :p. Pewnie pojawi się konfigurowalna opcja czy śmierć, przy danej konfiguracji postaci, jest nieodwracalna czy też nie.

Przyznam, że jestem już trochę zmęczony tym co piszę, ale w oddali widzę koniec prac.

: 25 listopada 2017, 17:20
autor: ghasta
Miałem napisać więcej, ale teraz nie zdążę ;/

W skrócie rzecz ujmując - silnik uzyskał możliwość przejścia stworzoną postacią od 1 do 350 paragrafu. Wszystkie paragrafy zostały oprogramowane i zachowują się (raczej) prawidłowo.

Do poprawienia zostały drobne błędy oraz brak mechanizmu tworzenia dodatkowych pasów z amunicją jeśli podstawowy pas przepełni się. Oba elementy nie wpływają na możliwość przejścia gry.

Teraz skupiam się na utworzeniu wszelkich dodatkowych rozwiązań, które w międzyczsie wymyśliłem.

p.s.
Będę potrzebował pomocy w zedytowaniu treści paragrafów i linków przekierowujących.
Czy ktoś jest chętny pomóc w tym zadaniu? Dostarczam potrzebne do tego narzedzia :)