piątek, 3 kwietnia 2015

Dziennik modułoroba, p. 2

Mimo że jestem jedyną osobą na świecie, którą to obchodzi, zamieszczam zapiski z kolejnych kliku dni spędzonych na tworzeniu modułu do Neverwinter Nights.
Because I goddamn can.



Dzień 10:

Praca z Poligonem. Ale po kolei.
Najpierw uświadomiłem sobie, że jakiś psychotyczny gracz może wpaść na pomysł, że nie pogada ze strażnikiem, który ma umożliwić ucieczkę z więzienia. Co wtedy? Postać będzie stała w miejscu jak kołek, przez wieczność (a przynajmniej tak długo, psychotycznemu graczowi się nie znudzi. Albo jego komputer nie stanie w płomieniach).
Musiałem napisać skrypt, który sprawdza datę. Gdy wybija północ, czyli w jakieś osiem minut po rozpoczęciu gry - po naszą PC przychodzą smutni panowie z bezpieki i torturują na śmierć. (Oczywiście, przychodzą tylko w formie werbalnej, czyli w dialogu wewnętrznym - szkoda tracić czas na spawnowanie NPCów, których i tak żaden zdrowy na umyśle gracz NIGDY nie zobaczy. Dialog też jest króciutki i bez szczegółowych opisów - znowu, prawie nikt go nigdy nie przeczyta, więc szkoda czasu na więcej. Ważne jest to, że koniec tego dialogu oznacza zakończenie modułu, podobnie jak w przypadku próby grania facetem).
To sprowadziło mnie do następnego problemu - temu dialogowi też musi towarzyszyć ściemnienie ekranu (tak, jak podczas seksu). Jak wspominałem wcześniej, ściemnienie to nie kłopot, ale potem trzeba znowu włączyć światło. Ten skrypt, który miałem, miał drobny problem, który kiedyś mógł okazać się potężnym problemem. Więc musiałem wykombinować, jak zmusić program do usunięcia z postaci tylko efektów wizualnych, nie ruszając ewentualnych buffów, klątw i chorób.
Dzięki likwidującemu ekwipunek postaci skryptowi z pewnego tutoriala, udało mi się zrozumieć, jaką strukturę musi mieć pożądany skrypt. W końcu napisałem taki, który wydaje się działać prawidłowo.

Zaczynam rozumieć, dlaczego programiści zarabiają tyle pieniędzy. I dlaczego software nie zawsze działa tak, jak powinien...

-------------------

Dzień 11:

Pracowity (i długi) dzień.
Najpierw na Poligonie opracowałem skrypt, dzięki któremu PC i pomagający jej w ucieczce strażnik znikną z więzienia i pojawią się w innym obszarze - znaczy, uciekną z paki. Brzmi o wiele krócej, niż trwało w rzeczywistości.

Następnie w Revolution Calling wyreżyserowałem dialog (zawierający werbalny seks) między PC a strażnikiem. Wyreżyserowałem, nie napisałem - czyli "tylko" stworzyłem wszystkie "node'y" w konwersacji, w każdym zostawiając krótką notatkę po polsku, jaka treść się ma w nim wyświetlać, i dołączyłem odpowiednie skrypty (na zgaszenie światła, zapalenie, na wyteleportowanie do następnej sceny/obszaru, no i skrypt decydujący losowo, czy PC ma orgazm, i następny, zliczający orgazmy i na tej podstawie ustalający libido PC. Naprawdę, marnuję swoje talenty nie pracując w pornobiznesie). Później przysiądę do tego i napiszę pełną, opisową treść po angielsku.

Stworzyłem też małą, leśną polanę, na którą ucieka nasz duet. Napisałem krótki skrypt i dialog, żeby psychotyczny gracz, próbujący wrócić do miasteczka, usłyszał od PC, że to zły pomysł i nic z tego. Mordowałem się długo z tym, żeby zmusić NPC, aby po tym, jak się spawnuje w obszarze razem z PC, zaczął z nią dialog. Następnie napisałem skrypt odsyłający NPCa do wszystkich diabłów. Po tym, jak strażnik sobie idzie, a PC zostaje sama w ciemnym lesie, zaczyna kolejny dialog wewnętrzny.

--------------------

Dzień 12:

Dialog ze strażnikiem napisany - próbowałem iść bardziej w stronę erotyki, ale skończyło się na zwykłym porno. Szczerze mówiąc - to może i dobry chwyt. Zwykłych modułów z przygodami wszelakimi jest na NWN Vault od groma, takich dla dorosłych - kilka, może kilkanaście. Przynajmniej rynek nie jest nasycony...

Wyszedł problem z moim "genialnym" skryptem, który po dotarciu PC i strażnika na polanę, miał inicjować dialog między nimi. Otóż skrypt raz działa, raz nie. Zawsze śmiałem się z informatyków, którzy po tym, jak melduje się im problem z programem, natychmiast odpowiadają "wczoraj działało". Teraz też mogę tak powiedzieć.

Mnóstwo czasu poświęcone na próby, eksperymenty w Poligonie, uruchamianie gry i ładowanie na przemian modów... I jasne jest jedno: w Poligonie taki sam skrypt działa, w Revolution Calling czasem tak, czasem nie.

Na szczęście zauważyłem jeden detal - kiedy dialog się zaczyna, w chat-logu pierwsza kwestia wyświetla się dwa razy.
Krótko mówiąc, chyba skrypt odpala dwa razy - raz dla PC i raz dla NPC. Najwyraźniej czasem takie podwójne odpalenie nie przeszkadza, a czasem dialog się nie odbywa.
Rozwiązanie jest proste - zmodyfikowałem skrypt, żeby odpalał tylko dla PC. Na razie działa, zobaczymy, czy jutro też tak będzie...

Poza tym stworzyłem następny leśny obszar, gdzie PC będzie mieć szansę pozbyć się więziennych ciuchów.

---------------

Dzień 13:

Na zrobionym wczoraj obszarze stoi szałas-leśniczówka. Dzisiaj stworzyłem jej wnętrze. I zajęło mi to cały roboczodzień... bo najpierw musiałem znaleźć taki tileset, żeby wnętrze w miarę pasowało do zewnętrza. I szczerze mówiąc nie znalazłem. Z zewnątrz chatka jest wykonana z desek. Od środka ma położony tynk na ścianach. Z zewnątrz ma wyraźny komin. W środku nie ma kominka - bo zwyczajnie nie ma na niego miejsca.
Niestety, taka specyfika NWN. Za to zresztą od początku tej gry nie lubiłem - jeśli chodzi o grafikę ten produkt zwyczajnie leży i kwiczy.
Może następny dzień będzie bardziej produktywny.

------------------

Dzień 14:

Kurwajegomaćpierdolonywdupęzajebany skrypt na odpalanie dialogu po ucieczce z więzienia dalej działa tylko wtedy, kiedy ma odpowiedni humor...
Muszę zająć się czymś innym, żeby nie zwariować.
OK, w szałasie umieściłem skrzynkę, w niej ciuchy i gorzałę (z myślą o następnej przeszkodzie na drodze PC), a samą skrzynkę zamknąłem tak, że tylko rogue ma szansę otworzyć. Inne klasy będą musiały wykazać się innymi zdolnościami, aby zmienić ciuchy i zdobyć wódzię (bądźmy szczerzy: PC innej klasy będzie musiała przespać się z właścicielem skrzynki. Albo poderżnąć mu gardło).

--------------------

Dzień 15:

Sprawiający problemy skrypt wygenerowałem w LSG (znaczy generatorze). Różni się od mojego dokładnie jedną funkcją... Zamiast "GetObjectByTag", mam teraz "GetNearestObjectByTag". I wygląda na to, że ta wersja działa.

Poza tym powstał kolejny obszar, tym razem duży, muszą na nim zmieścić się dwie możliwe ścieżki dla PC (przy czym jedna musi być wyraźnie taka, że PC nadkłada drogi), dwa patrole okupantów, zajazd i dyliżans. Uruchomiłem dwa Area Transitions.

-------------------

Dzień 16:

OK... ten nieszczęsny skrypt wpędziłby mnie w alkoholizm... gdybym już tu nie był.
Po bardzo starannym obadaniu problemu, wyciągnąłem następujące wnioski:
- wciąż nie wiem, co nie działa.
- objaw pojawia się, gdy uruchomię grę po resecie komputera i załaduję moda. Wtedy skrypt nie odpala.
- ale, kiedy następnie wyjdę z gry i uruchomię ją ponownie, znowu załaduję moduł... nagle skrypt działa prawidłowo.
- co podsuwa mi pomysł, że problem nie tkwi w module, ale w mojej kopii gry/moim laptopie.

Na razie wymyśliłem, jak obejść kłopot (skrypt już nie jest odpalany na wejściu do obszaru, tylko co sześć sekund na NPC, przy czym deklarując i modyfikując zmienne i ustawiwszy conditionale zmuszam go, aby pożądany dialog uruchamiał się tylko raz, wtedy, kiedy trzeba).
Tyle na dziś.

---------------------

Kilka tygodni temu, zanim zacząłem tworzenie modułu, wymyśliłem sobie, że będzie to ponura historyjka z motywami erotycznymi. Trochę się tej erotyki obawiałem - bo co będzie, jeśli to, co napiszę, będzie nudne albo żenujące, a nie erotyczne? Gdzieś po drodze strzelił mi w głowie jakiś hamulec i zboczyłem (Ha! Tania gra słów! Mógłbym się załapać do cholernego Teleexpresu!) w kierunku zwykłej pornografii.
Odkryłem, że bardzo łatwo przychodzi mi jej pisanie.
To zdumiewające - tyle lat pisałem najróżniejsze rzeczy, zwykle mniej, czasem bardziej udane, nigdy nie było w nich erotyki, zawsze z trudem walczyłem z moim mózgiem o każdy wyraz, czasem przez tydzień pracowałem nad jednym zdaniem opowiadania, które i tak skończyło w koszu... A tutaj piszę pornola i idzie gładziuteńko.
Teraz wygląda na to, że spod mojej klawiatury wyjdzie totalny porno-moduł.

I dobrze. Jeśli nikomu się nie spodoba, przynajmniej uczciwe będę mógł powiedzieć, że pisząc go świetnie się bawiłem i było to bardzo pouczające zajęcie.

czwartek, 2 kwietnia 2015

Jeszcze osiem

W zakładce "Bieganie" wpis i fotka z okazji pierwszego kwietniowego człapania pod wiatr, dla zmyłki nazywanego bieganiem.

poniedziałek, 30 marca 2015

Francowaty Francuski?

Uwielbiam kupować książki za grosze w supermarketach. Takie z wielkiego kosza, po kilka złotych, zazwyczaj autora, o którym nigdy wcześniej nie słyszałem. Proste - ryzykuję równowartość dobrego piwa. W najgorszym wypadku nabędę coś, co można podłożyć pod krzywą nogę krzesła, w najlepszym - odkryję jakąś perełkę.

Czasem ten proces jest dwuetapowy.

Najpierw kupuję tanią książkę.

Na przykład "Błazen" Christophera Moore'a. Twarda oprawa, obwoluta, całkiem solidne wykonanie. Książka z 2009 roku, więc nie taka znowu stara (choć nie jest to oczywiście nowość). Cały ten luksus kosztował mnie zawrotną kwotę 6,99PLN.

Książka jest czymś w rodzaju parodii Szekspira. Zaskakująco zabawnej i rubasznej.

Jednak czytając posłowie autora, gdzie autor tłumaczy się, że nie ma nic przeciw Francji i Francuzom, a słów błazna o "pieprzonym francuskim" użył, bo nie mógł się oprzeć aliteracji, zacząłem podejrzewać, że coś mogło przepaść w tłumaczeniu.

I tak sięgnąłem po książki Moore'a w oryginale. Była to jedna z najprzyjemniejszych rzeczy, jakie spotkały mnie w ostatnich latach (co być może mówi Wam aż zbyt wiele o jakości mojego życia).

W każdym razie - rubaszne poczucie humoru króluje we wszystkich książkach autora. Łączy je zresztą nie tylko to: niektóre rozgrywają się w tym samym mieście i na drugim planie opowieści pojawiają się postacie z innych książek. Co może momentami nieco dezorientować nowego czytelnika - bo na przykład taki detektyw, albo rudowłosa wampirzyca w "Dirty Job" wydają się pojawiać bez wyraźnej przyczyny i mówić o rzeczach, które nie mają nic wspólnego z fabułą... Ale nawet świeży czytelnik nie powinien mieć przez to większych kłopotów.

Nie zamierzam tutaj pisać pełnowartościowych recenzji... ale jest kilka pozycji, które szczególnie chciałbym polecić (zwłaszcza w wersji oryginalnej).

- "Dirty Job". Opowieść o szarym, nudnym facecie, który pewnego dnia zostaje Śmiercią (nie mylić z "Mortem" sir Pratchetta).

- "Lamb". Czyli te lata z życia Chrystusa, które jakoś nie załapały się do Biblii. A jest tego ponad dwie dekady.

- "Fluke". Czyli wieloryby, podwodna cywilizacja i kupa śmiechu.

- "Fool". Czyli wspomniany wcześniej "Błazen". Genialna przeróbka Szekspira. I wielki zawód na tłumaczu - naprawdę, nie znalazł polskiego odpowiednika dla aliteracji "fucking french"?

- "Sacre Bleu". Moja ulubiona powieść Moore'a, rozgrywająca się w środowisku impresjonistów. Dopóki jej nie przeczytałem, nawet nie zauważałem, jak wiele niebieskiego jest w ich obrazach.


Wszystkie inne też są kapitalne, ale powyższe według minie stanowią lekturę obowiązkową. I bądźmy szczerzy - zabrakło Pratchetta, a prawie wszyscy potrzebujemy jakiegoś, jakiegokolwiek autora, który potrafi sprawić, że po wyjątkowo spierdolonym dniu, czytając książkę odkrywamy, że wciąż jesteśmy w stanie się śmiać.

piątek, 27 marca 2015

Dziennik modułoroba

Prace nad moim modem do Neverwinter Nights trwają. Oto ciąg dalszy mojego developer-diary.
Oczywiście, nie podaję dat, tylko kolejne dni pracy nad modułem - czasem mam dzień przerwy.

Dzień 5:

Roboczodzień poświęcony na przeszczepienie skryptów z Poligonu do Revolution Calling. Trochę kłopotów z ograbieniem postaci z całego złota - ale w końcu udało się nieco inną drogą, niż w tutorialu z Leksykonu.
Poza tym stworzyłem więzienne ciuchy, żeby PC, jak już ucieknie z pudła, miała dodatkowy problem. Teraz będzie musiała jakoś pozbyć się ciuchów, które rzucałyby się w oczy patrolom szukającym uciekinierki i cywilom.
Oczywiście, oznacza to, że muszę jakoś powstrzymać gracza przed bieganiem na golasa... Ale to problem na inny dzień.
Podsumowując: PC najpierw jest sprawdzana, czy ma właściwą płeć, level i rasę (jeśli nie - moduł informuje, jaką postacią należy grać i się zamyka), jest ograbiana z ciuchów i złota, na ich miejsce dostaje więzienne szmaty, no i zaczyna wewnętrzny dialog (jeszcze nie napisany) który ma rozpocząć pierwszego questa: wydostanie się z pierdla.

---------------

Dzień 6:

Roboczodzień zmarnowany na kombinowanie, jak stworzyć trupa. Samo stworzenie NPCa i zrobienie mu skryptem kuku okazało się nieskomplikowane. Kłopot w tym, że trup ma obrzydliwą tendencję do znikania. Na razie kręcę się w kółko.

-------------

Dzień 7:

Jak to zwykle bywa, dotarło do mnie, co robię źle, gdy tylko wyłączyłem laptop. Wystarczy dać w inventory NPCa jakiś przedmiot oznaczony jako "dropable"... i dopóki nikt nie zabierze tego przedmiotu z trupa, denat będzie posłusznie leżeć na swoim miejscu.
Mówiąc krótko - współwięzień naszej PC jest bezpiecznie martwy. Drzwi do celi zamknięte na amen - nie da się potraktować ich wytrychem, a próby wyłamania gołymi pięściami (PC jest rozbrojona) skazane na niepowodzenie.
Napisałem dwa krótkie opisy - dla drzwi celi i współwięźnia. Piszę po angielsku i mózg zaczyna mi zgrzytać, bo sam nie wiem, w jakim języku myślę.
W dzienniku pojawiają się dwa questy - jeden, ogólny, na razie jest tylko placeholderem, drugi to proste zadanie: ucieknij z więzienia. Drugi też nie jest napisany do końca, ale już mam jakiś punkt zaczepienia.
Poza tym po więzieniu chodzi strażnik. Na razie nie robi nic poza tym, ale wkrótce to się zmieni.

---------------

Dzień 8:

Seks w modzie może być tylko w formie werbalnej (tzn. w moim modzie. Inni potrafią zrobić własne hak packi i stworzyć odpowiednią animację).
Ale jeśli dwie figurki stoją obok siebie, a w niewielkim okienku dialogowym wyświetla się odrobina erotyki (te wszystkie naprężone męskości, buzujące hormony i wilgotne kobiecości, nieprawdaż) to efekt będzie co najwyżej komiczny.
Muszę chociaż zgasić światło.
Jeśli mamy czarny ekran, a w okienku dialogowym wyświetla się odrobina erotyki, to przynajmniej nie powinno wywoływać rechotu (nie licząc ewentualnego nabijania się z grafomańskiej porno-prozy).
To oznacza, że dziś pracuję z Poligonem, a nie z Revolution Calling.
I tak kawałek roboczodnia poszedł na opracowanie skryptu, który gasi światło (efekt wizualny "darkness"), co było w miarę łatwe. Reszta poszła na odkręcenie tego efektu - jak scena erotyczna (dialog) się skończy, znowu ma się zrobić jasno na scenie. I było to zaskakująco skomplikowane.
W końcu zajrzałem do cudzego moda i znalazłem skrypt na usunięcie WSZYSTKICH efektów z obiektu. Zmieniłem go tak, żeby obiektem była nasza PC i na razie działa wystarczająco dobrze.
Oczywiście... gdyby na PC był jeszcze jakiś inny efekt, może jakiś buff, to też by przepadł... Gdyby była to klątwa, to nawet zabawne: w moim świecie seks zdejmuje klątwy i leczy drobne przypadłości! Sexual healing! Alleluja!
Mimo wszystko, to może narobić w przyszłości kłopotów.
Ale tym będę się martwić, jeśli dojdę do takiego etapu.

---------------------

Dzień 9:

Dzisiaj nie skrypty. Dzisiaj pisanie dialogu. A raczej monologu wewnętrznego.

To trudniejsze, niż się wydaje.

Od tego monologu zaczyna się mój mod. Muszę w niego wcisnąć ekspozycję. To znaczy - tyle, żeby gracz miał jakieś pojęcie, czemu jest w więzieniu i nabrał motywacji, aby zeń spieprzyć, ale jednocześnie żeby nie zasnął z nudów przedzierając się przez tony zbędnych zdań. Ekonomika dawkowania informacji.
Tylu poprawek dla tak niewielu linijek dialogu nie robiłem od bardzo dawna.

Poza tym jest coś, co mnie wkurza. Dyndające literki. Czyli "I" oraz "a" na końcu wersu. Nie wiem, czy w ogóle da się je posprzątać - w żadnym tutorialu/poradniku nikt się o tym nie zająknął. Najwyżej już takie zostaną. Trudno. Tylko mój wewnętrzny redaktor nie przestaje zgrzytać zębami.

---------------------

Tak na marginesie, to zwykle dyndające spójniki nie spędzają mi snu z powiek. W normalnych dokumentach tekstowych stosuję zasadę "jak najmniej formatowania, żeby ewentualny redaktor nie musiał się szarpać z tym, co spieprzyłem", więc tekst jest wyrównany do lewej i literki sobie dyndają.
Podobnie na tym blogu - uważam, że jeśli coś nazywa się blog, to nie ma dość godności, aby zasłużyć sobie na porządne wyjustowanie tekstu.
Ale jakoś w grze te literki działają mi na nerwy. A w angielskim jest ich zaskakująco dużo.

Teraz jestem na etapie pisania kolejnego dialogu, tym razem takiego, w którym wreszcie organy płciowe pójdą w ruch. Cóż, skoro nie udało mi się spełnić życiowego marzenia i znaleźć pracy w pornobiznesie, mogę przynajmniej wyreżyserować sobie kilka porno-scenek do mojego modułu...


Za kilka dni ciąg dalszy.

poniedziałek, 23 marca 2015

void main ()

Jakiś czas temu napisałem, że zamierzam zrobić moduł do Neverwinter Nights. Jak często bywa, nie pisałem tak do końca poważnie.

Pomysł był następujący:
- Mam Neverwinter Nights zainstalowane na laptopie. Co mnie samego trochę zaskakuje, bo nigdy nie lubiłem tej gry. Grafika wygląda koszmarnie, okna dialogowe są mikroskopijne, a fabuła oryginalnej kampanii była durna i nafaszerowana dziurami logicznymi. Właściwie to kilka miesięcy temu zainstalowałem NWN, bo byłem ciekaw dwóch dodatkowych kampanii - i do tej pory nie znalazłem czasu/siły/ochoty aby się im przyjrzeć...
- W każdym razie, mam NWN, a w zestawie jest NWN Aurora Toolest - czyli mogę napisać własną przygodę.
- Na początek ściągnąłem z sieci kilka tutoriali, Leksykon i generator skryptów.
- Stworzyłem prosty mod, zgodnie z instrukcjami jednego tutoriala. Nie rozumiałem ponad połowy tego, co zrobiłem, ale co tam, jedziemy dalej.
- Przeznaczyłem codziennie od 45 minut do godziny na zabawę/pracę z NWN Toolsetem.
- Założyłem plik txt, w którym notuję, co danego dnia udało mi się zrobić.
- Miałem pobawić się przez tydzień, może dwa, a następnie wyekstrahować z powyższego dziennika materiał na post z serii "Krok po kroku", w którym ponabijałbym się z własnej głupoty, nieznajomości matematyki i informatyki, z pomysłu na robienie modułu do tak starej gry i na końcu w ten czy inny sposób wycofałbym się z pomysłu robienia moda, a tym bardziej tworzenia własnej gry.

Proste, prawda?

Sęk w tym, że czwartego dnia coś się wydarzyło. A było to tak:

Dzień 1:

Ponieważ jestem świeżo po obejrzeniu "Notorious" Hitchcocka, uznałem, że mój mod do Neverwinter Nights będzie historią kobiety wplątanej w jakąś aferę szpiegowską. Takie detale, jak świat przedstawiony i konkretna fabuła opracuję później.

Na razie muszę opracować, jak zmusić gracza, aby grał postacią właściwej płci.

Dzięki Cthulhu za Lilac Soul's Script Generator.

Po zaledwie dwóch godzinach kombinowania udało mi się zmusić moda do rozpoczynania dialogu wewnętrznego, jeśli gracz zdecyduje się grać samcem. Po następnych dwóch udało mi się zmusić do działania skrypt EndGame - który powinien odpalać, gdy PC ma jądra.

Przydałoby się też ograniczyć gracza, aby nie grał zaimportowaną postacią z wysokim levelem. Jeszcze nie wiem - ale podejrzewam, że dla spójności fabuły będzie to konieczne - czy nie wprowadzę też ograniczenia dotyczącego klasy i rasy.

Na wszelki wypadek lepiej wykombinować, jak to zrobić. Ale to zostawiam sobie na jutro, dzisiaj już i tak nabiłem nadgodziny.

------------

Dzień 2:

Mod, w którym pracowałem nad skryptem eliminującym samczych PC jest moim poligonem doświadczalnym. Nawet nazywa się "Poligon".

Dzisiaj przyszła pora na założenie prawdziwego pliku z prawdziwym modem (a raczej tym, co nim kiedyś, przy odrobinie fuksa, będzie).

Tytuł roboczy: Revolution Calling.

Cały dostępny dziś czas poświęcony na sprawdzanie, który z tilesetów nadaje się na wnętrze więzienia (jak wiadomo z gier Bethesdy, cRPG które jest kasowym sukcesem musi zaczynać się od sceny w więzieniu). W końcu mam swoją małą celę.

--------------

Dzień 3:

Ponieważ PC zaczyna w więzieniu, należy rozbroić. Skrypt, który dokumentnie czyści inventory łatwo znaleźć w tutorialach - sęk w tym, że PC, choć pozbawiona dóbr doczesnych, nie powinna siedzieć w celi nago. Jak zachować jakieś ciuchy?

Pierwsza opcja, to najpierw zniszczyć wszystko, co ma nowo utworzona postać, a następnie stworzyć w jej inventory ciuchy i je założyć.

Druga opcja, to zniszczyć całe inventory PC, z wyjątkiem tego, co akurat ma na sobie.
Ta opcja ma dwa warianty - łatwy, czyli taki, w którym zniszczeniu nie ulega zbroja i hełm, oraz trudniejszy, w którym tylko zbroja nie ulega zniszczeniu.

Kłopot z drugą opcją jest taki, że jakiś sprytny gracz może w innym modzie stworzyć postać, zostawić na pierwszym levelu, ale wyekwipować w jakąś wypasioną zbroję i wyeksportować. To oznacza dwa problemy: raz, nasza PC, niby totalnie zielona, znikąd ma magiczną super-bajer-alleluja zbroję, która nie pomogła jej uciec przed aresztowaniem, ani nie została zabrana przez chciwych strażników. Dwa, zbroja z innego modułu nie znajduje się w palecie mojego moda - co może mieć mało seksowne skutki.

Co mnie wkurzyło?
Cały dzisiejszy czas poświęciłem na rozpracowywanie opcji drugiej. Dopiero pod koniec, kiedy znalazłem się na etapie "you can leave your hat on" (znaczy, poza kaskiem i zbroją PC traci wszystko), dotarło do mnie, że bardziej logiczne będzie ogołocenie postaci i ubranie jej w jakieś badziewne szmaty.
Odpowiedni skrypt powstanie jutro.

------------------

Dzień 4:

Zamiast skryptu na striptiz PC, cały roboczodzień poświęcony na opracowanie mechaniki związanej z lokalną zmienną...

Może zacznę od początku.
W moim modzie będzie nie tylko przemoc, rąbanie, mordowanie, kradzieże, wulgaryzmy - ale też seks (jak kiedyś pisałem, wiem, że ludziom podoba się "The Game of Thrones". Znaczy, musi być seks i w miarę możliwości kazirodztwo).
Ale samo bzykanie nie wystarczy.
Jak już pisałem, jestem po "Notorious", więc zwyczajnie zakładam, że dla PC seks będzie środkiem do celu - może PC będzie się prostytuować, aby zarobić na ekwipunek, może musi uwodzić jakiś gestapowców, żeby wyciągnąć od nich informacje... Na razie jest logicznie (choć seksistowsko, mizoginistycznie i niedojrzale. Ale logicznie).
Jednak chcę, żeby używanie seksu jako broni zostawiało jakiś ślad na psychice bohaterki. To też logiczne - bo o ile za pierwszym razem PC może mieć jakieś opory zanim pójdzie do łóżka z okupantem, to za dziesiątym razem te opory będą minimalne. Za setnym zapewne żadne.

Jeszcze za wcześnie decydować, czy zmienną będzie moralność, wstyd, czy dajmy na to, nimfomania. Ale chciałem opracować mechanizm.

Dzięki Leksykonowi i Generatorowi skryptów chyba się udało.

--------------------

No i właśnie... Niby nic wielkiego, napisałem (a raczej zmodyfikowałem utworzone w generatorze) kilka skryptów, które ustalają pewną zmienną, potem w oparciu o jej wartość uruchamiają wyświetlanie odpowiednich opcji dialogowych, aby wreszcie zmodyfikować wartość tej zmiennej.

To podstawowy mechanizm, na którym opiera się działanie jakiegokolwiek questa. Nie odkryłem Ameryki.

Ale gdy całość zaczęła działać, coś zatrybiło w mojej czaszce.

Napisanie tego modułu nie będzie łatwe. Ale teraz widzę, że jest możliwe.

Mało tego, mój durny mózg już zaczął opracowywać fabułę. Pomysły już buzują, dialogi już się wykluwają, NPC zaczynają się pojawiać i nabierać rumieńców... Fakt, na razie tylko w mojej głowie, ale stamtąd droga do moda, choć wyboista, jest możliwa do pokonania.

Oczywiście, nie zrobię cudów - większość tego, co będzie się działo (łącznie, zgadliście, z seksem) nie będzie miało własnych animacji (bo nie ma ich w seryjnej palecie Toolsetu)... Ale przypomniałem sobie, że jedna z moich ulubionych gier i zarazem - być może - jeden z najlepszych pecetowych erpegów w historii, czyli Planescape: Torment, też opierał się na kilometrowych opisach i gargantuicznych dialogach, a nie na dokładnych animacjach. Wiadomo, nie stworzę następcy Tormenta, ale wiem, że da się dobrze bawić grą, która zwyczajnie wyświetla werbalny opis, a nie szpanuje tworzoną godzinami animacją w full 3D.

Poza tym odkryłem, że na neverwintervault.org wciąż jest aktywna społeczność, która produkuje mody. Teoretycznie, jeśli uda mi się ukończyć mój moduł, to mam szansę na jakąś publiczność.


Nie przestaję pracować nad moją erpegową przygodą. Za kilka dni następne notatki z dziennika moduło-twórcy.

środa, 18 marca 2015

Spot the pod person

Wybory na prezesa RP nadchodzą nieubłaganie. Uznałem, że najwyższa pora sprawdzić, kto w ogóle startuje (do tej pory starannie unikałem informacji na ten temat). Rzucę okiem, nie przyglądając się takim szczegółom, jak program, materiały prasowe i obietnice.

Od najniższego poparcia zaczynając:

Anna Grodzka.
Kandydatka, której start albo jest wyrazem jakiegoś nieuzasadnionego optymizmu, co do otwartości umysłów narodu, albo próbą dodania sobie do CV zdania "startowała w wyborach prezydenckich '15".

Wanda Nowicka.
Skądś znam to nazwisko... Ale nie mam pojęcia, skąd. Możliwe, że myli mi się z bosmanem z książek Szklarskiego o Tomku...

Marian Kowalski.
Z takim nazwiskiem, po prostu nie miał wyboru i musiał iść do Ruchu Narodowego. No bo Kowalski, najbardziej polskie nazwisko świata, no i Marian - znaczy, Maria, Najświętsza Dziewica, Królowa Polski... tylko w męskiej wersji.

Adam Jarubas.
Fryzura, z przyczepionym do niej facetem.

Janusz Palikot.
Człowiek, który w miejscu poglądów ma tabliczkę "Ta przestrzeń do wynajęcia".

Janusz Korwin-Mikke.
Muszka, z przyczepionym do niej narządem mowy, w żaden sensowny sposób nie połączonym z rozsądkiem.

Magdalena Ogórek.
Ładna kobieta, z przyczepionym do niej beznadziejnym sztabem i Leszkiem Millerem.

Paweł Kukiz.
Człowiek, który odkrył, że tutaj jest jak jest.

Andrzej Duda.
Człowiek, który szybciutko oblałby Test Turinga.

Bronisław Komorowski.
Człowiek, który zgolił wąsy (to dobrze, tylko dyktatorom do twarzy z wąsami) i nie umie napisać wyrazu "ból" bez strzelenia ortografa (to mniej dobrze, nawet niektórzy dyslektycy potrafią ogarnąć pisownię trzyliterowego słowa).


I na kogo tu zagłosować? Znaczy, będąc mną, ubogim bezbożnikiem, pijakiem i osobą o krok od ubezwłasnowolnienia?

Grodzka albo Ogórek.

Kłopot z panią Ogórek jest taki, że wspiera ją osoba, która własnoręcznie udusiła i zarżnęła polską lewicę, a teraz siedzi na jej stygnącym trupie i go sodomizuje. To skutecznie mnie odstrasza od głosowania na kandydatkę Sojuszu.

Została pani Grodzka.

Potem zastanowię się, na kogo oddać głos w drugiej turze, w której zabraknie mojej kandydatki.

-----------------------------

Edit (1.05.15) - zważywszy, że nabijałem się z prezydenta Komorowskiego za ortografa, a sam umieściłem w tym wpisie metryczną tonę literówek (mam nadzieję, że dziś usunąłem ostatnią)... w każdym razie, trochę mi głupio. Prawie wstyd. Więc w ramach zadośćuczynienia pewnie postawię "X" przy nazwisku pana Bronisława w drugiej turze - w pierwszej chyba padnie na tego pana z Demokracji Bezpośredniej, jak tylko w końcu zapamiętam, jak się on nazywa.

poniedziałek, 16 marca 2015

Droga do "early access" zaczyna się od małego kroczku.

Jak pisałem wcześniej - droga do forsy wiedzie przez early access. Niestety, trzeba zrobić kawałek gry, który będzie w miarę działać, nie wystarczy tylko naobiecywać cudów - to nie wybory prezydenckie.

*

Najpierw może wyjaśnię dwie rzeczy: po pierwsze, do robienia gier mam dokładnie takie same kwalifikacje, co do kręcenia filmów.

Filmy oglądam całe życie, ale nigdy żadnego nie nakręciłem. W gry gram niewiele krócej - zacząłem od River Raid na Atari 800XL - i też żadnej nigdy nie wyprodukowałem.

Szczerze mówiąc, z filmem byłoby mi łatwiej. Wystarczy smartfon, program do edycji video i można już coś kręcić.

A gry? Gry to poważna sprawa.

A ja nie tylko nie umiem programować - i tutaj ta druga rzecz. Nie radzę też sobie z matematyką - tak jak niektórzy mają dysleksję (mówię o tej prawdziwej, a nie o tej, którą załatwiało się u szkolnego psychologa, żeby nie dostawać pały z polskiego za strzelanie ortografów), tak ja mam problem z matmą. 7x8? Nie wiem. Muszę policzyć (poruszając ustami i wspomagając się na palcach, po tym jak wyjdzie mi 57 uznać, że coś jest nie tak i policzyć jeszcze raz) albo po prostu sięgnąć po kalkulator.

Krótko mówiąc, napisanie gry w moim przypadku to pomysł szczególnie ambitny.

*

Jest kilka programów do robienia gier.

Gdybym chciał zrobić tekstową przygodówkę, albo interactive fiction (są tacy, którzy argumentowaliby, że to w zasadzie jedno i to samo), nie miałbym problemu. Krótka konsultacja z Googlem Wszechmogącym natychmiast podsunęła kilka opcji - atrakcyjnych, bo nie wymagających umiejętności programistycznych, ponadto darmowych. Twine, ADRIFT, TADS, RAGS, Quest... jest w czym wybierać.

Sęk w tym, że wolałbym zrobić taką grę, do której gracz siada i nie musi się uczyć tych wszystkich komend, które trzeba ręcznie wklepywać, aby grać w tekstówkę. Poza tym, jeśli mam być szczery, słabo z tutorialami dla początkujących. Nie ma ich wiele i nie pokazują, jak zrobić pewne rzeczy, które chciałbym zobaczyć w swojej grze.

RPG Makera rozważyłem i szybko odrzuciłem - kosztuje prawie sześćdziesiąt dolców, nie stać mnie na takie ekstrawagancje.

*

Przez chwilę wyglądało na to, że jeśli chcę stworzyć grę, to jednak muszę nauczyć się programować. Może Java, może C++, może flashowy Action Script (przy czym warto pamiętać, że Flasha nie rozdają za darmo, znowu staje na mojej drodze bariera finansowa).

Miałem zachować się po męsku i niczym Cimoszewicz, spieprzyć do lasu i z godnością się poddać, gdy przyszedł mi do głowy pomysł, jak obejść powyższe problemy.

Ciąg myślowy przebiegał mniej więcej tak:

- Chcę, żeby gra skupiała się na opowieści.

- Chcę, żeby bohater się zmieniał wraz rozwojem historii.

- Chcę nadać grze pozór nieliniowości - tzn. jest konkretny cel, który gracz musi osiągnąć, ale wiedzie do niego kilka dróg.

- Wolałbym, żeby gra nie była tylko tekstowa.

- Nie umiem sam zrobić grafiki. Ani dźwięków. Ani muzyki...

W związku z tym znalazłem banalnie proste rozwiązanie.

NWN Toolset.

Czyli zamiast własnej gry od podstaw, robię "zaledwie" mod do Neverwinter Nights.
Dlaczego?

- Wszystko, co chcę zobaczyć w mojej grze oznacza, że marzy mi się cRPG, albo chociaż przygodówka z elementami RPG.

- Robienie moda oznacza, że nie muszę się przejmować takimi drobiazgami, jak grafika i dźwięki - to wszystko już jest w zestawie. Muszę tylko poskładać klocki i napisać historię.

- Jest sporo poradników, tutoriali i coś, co nazwano Leksykonem, więc nawet mój wyniszczony gorzałą mózg ma szanse to ogarnąć.

- Poza tym na pewno mnóstwo osób ma wciąż zainstalowaną kilkunastoletnią grę i regularnie ściąga nowe mody, right?

*

Oczywiście, jest jeden szkopuł: specyfika NWN oznacza, że jestem ograniczony do fantasy.

Nie darzę tego gatunku jakimś większym sentymentem, ale nie jestem całkiem w lesie. Jak pamiętają Stali Czytelnicy, przebrnąłem przez kilka książek fantasy. Wiem, że ludziom podoba się na przykład "The Game of Thrones".

Wiem w takim razie, co musi się znaleźć w moim modzie.

Seks, gwałty i kazirodztwo.

Nie ma problemu. Jeszcze czegoś takiego nie pisałem, ale to nie może być trudne.

Najpierw mod. Jeśli wyjdzie dobrze, pomyślę o zrobieniu gry od podstaw. A potem - Kickstarter, Early Access, Steam Greenlight i będę bogatym człowiekiem.

Zaczynam od jutra.