Offtopic - klony Otchlani.

Błędy wszelkiego rodzaju znalezione w wersji 1.3 czyli aktualnie dostępnej wersji

Moderator: dEmoraliZator

dawno_temu
Posty: 5
Rejestracja: sob maja 01, 2010 10:28

Offtopic - klony Otchlani.

Post autor: dawno_temu » sob maja 01, 2010 12:19

Witajcie.

Mialem problem, zeby wybrac odpowiedni dzial forum - to, co chce napisac powinno trafic do jakiegos "offtopic"... W koncu zdecydowalem sie na na ten dzial, wylacznie z powodu w miare swiezej ostatniej aktywnosci - mam tutaj wieksza szanse, ze ktos mnie przeczyta.

Zacznijmy moze od tego, ze z Otchlania jestem emocjonalnie zwiazany, od kiedy w mlodosci (dawno temu) zjadla mi ladnych kilka tygodni zycia. Zaczynalem od pierwszego dema, potem gralem w bete, a potem... nie pamietam za dobrze, ale w kilka kolejnych wersji tez gralem. Udzielalem sie nawet w rozmowach na forach - wtedy bylo jeszcze takie stare i brzydkie forum bez logowania, nowe dopiero mialo sie pojawic.

Krotka dygresja - jestem programista. Otchlan nie byla z pewnoscia jedyna przyczyna, dla ktorej obralem taka klase postaci w grze w zycie, ale wlasnie ona - bardziej, niz cokolwiek innego - utwierdzila mnie w przekonaniu, ze programowanie i informatyka to cos dla mnie. Mowie w takim samym stopniu o samej grze, jak i o "lamaniu szyfru cezara" ktorym "zaszyfrowane" byly podowczas opisy lokacji czy angazowaniu sie w projekty klonujace Otchlan. Zaden z nich nie przetrwal, o ile wiem, niemniej uczestnictwo w niektorych z nich bylo ciekawe i pouczajace.

Teraz wrocilem. I widze wciaz to samo, co tyle lat temu: 4k linii kodu (z faq wzieta informacja) w Pascalu z jedna wstawka assemblerowa. Nieprzyjazny dla klientow (tf, zmud, etc.) interfejs, brak multiplayera, brak wbudowanego w gre edytora obiektow, brak elementow wizualnych i dzwiekowych.

W 2010 roku.

Nie wiem, jakie sa powody, dla ktorych Weq nie wypuscil Otchlani 2. Gdyby ktos mi kazal zgadywac, z pewnym wahaniem wskazalbym na cos pomiedzy brakiem czasu a znudzeniem tematem. A byc moze Weq po prostu stwierdzil, ze przepisanie calej gry od zera to za duzy wysilek w porownaniu z w gruncie rzeczy niewielka popularnoscia, na jaka mozna liczyc przy tworzeniu gier tekstowych. Jak juz wspomnialem, mielismy kilka projektow, ktore moglyby Otchlan zdetronizowac - a przynajmniej uczciwie z nia konkurowac - ktore jednak padly; glownym powodem ich porazki byly (wtedy) niedostateczne umiejetnosci i znudzenie, brak konsekwencji. Ostatecznie porywaly sie na takie projekty osoby bardzo mlode...

Ale - jeszcze raz zaznacze - mamy juz 2010 rok. Tak jak i wszyscy inni, tak i ja w miedzyczasie expilem. Uwaga, wyjawiam pierwszy powod, dla ktorego pisze ten post! Otoz - chcialbym, zeby odezwali sie wszyscy, ktorzy kiedys podejmowali proby zaprogramowania klona Otchlani (MadGuy, patrze na Ciebie...). W jakim celu - o tym pisze ponizej.

Marzy mi sie gra.

Tekstowo-graficzny RPG single- i multiplayer. Zasadniczo polaczenie Otchlani, MUDow i japonskich "visual novel"... Kilka lat temu przerazilby mnie zakres prac, potrzebnych do wyprodukowania takiej mieszanki - dzis spokojnie zaczynam projektowac. Na kartce, bo tak mi najwygodniej, w UMLu, ale mocno uproszczonym i troche mniej formalnym - tylko ja bede to czytal przeciez.

Moze zacznijmy od podstawowych zalozen. Cala gra bedzie prawdopodobnie napisana w Pythonie - Ruby nie lubie, Pike ma za malo bibliotek, OCaml (prosze, listosci) odpada, jezyki niskopoziomowe to strata czasu, jezyki kompilowane - de facto tez, bo i tak trzeba w grze osadzic interpreter jakiegos jezyka (albo napisac wlasny), zeby bylo jak opisywac lokacje, przedmioty i cala reszte.

Troche o Pythonie (chcecie wiedziec?): silnie typowany, interpretowany jezyk bardzo wysokiego poziomu z mnostwem bibliotek. Wysoce przenosny - bez wiekszych zmian moze dzialac zarowno na Macu, jak i Windowsie, nie wspominajac o takich niszowych drobiazgach, jak wszystkie Linuxy i Unixy na praktycznie wszystkich architekturach albo niektore telefony. "Bardzo wysokiego poziomu" oznacza, ze serwer TCP pisze sie w szesciu linijkach kodu.

Python ma dwie wady - po pierwsze, zeby uruchomic jakis program napisany w Pythonie, trzeba miec w systemie zainstalowana odpowiednia wersje jego interpretera. Po drugie - sam interpreter wazy kolo 20 MB. W dzisiejszych czasach nie jest to wiele - niemniej spakowana Otchlan to tylko 1.2MB... Z drugiej strony - grafiki potrzebne grze maja szanse zajmowac nawet wiecej miejsca, niz interpreter, wiec moze mozna sie na takie obciazenie zgodzic.

Teraz o samej grze.

Technicznie klient i wlasciwa gra beda odrebnymi programami, ale dla uzytkownika nie bedzie to mialo znaczenia. Chcac uruchomic gre, uzytkownik uruchamia okienkowego klienta (we wczesnych wersjach dwa tekstboxy, jeden z inputem uzytkownika, drugi z outputem gry), ktory z kolei uruchamia serwer z ktorym od razu laczy sie i loguje. Z serwerem mozna sie polaczyc takze zwyklym telnetem, ale wtedy tracone jest formatowanie tekstu, grafiki w tle i dzwieki (nie ma innego wyjscia).

Sama zasada rozgrywki jest identyczna, jak w MUDach i Otchlani - wpisujemy (w jedno okienko) komende i czytamy jakis opis, ktory w odpowiedzi (w drugim okienku) wyskoczyl. Pierwsza roznica polega na tym, ze dowolny tekst moze miec dowolny styl graficzny, lacznie z tlem - i ze jest to kontrolowane przez serwer. Podobnie serwer ma mozliwosc odgrywania dzwiekow poprzez klienta.

Do tego momentu mamy Otchlan, tyle ze w okienku normalnym, a nie konsolowym. Jest kilka roznic, miedzy innymi mozliwosc korzystania z konsoli Pythona czy mozliwosc edytowania obiektow bez restartu gry, ale to jeszcze nie jest rewolucja. Naprawde fajne jest to, ze dwoch i wiecej graczy moze polaczyc swoje gry. Nie bedzie to nalozenie na siebie odrebnych swiatow, ale doslownie polaczenie korytarzem, czy drzwiami. Grajac caly czas pod tym samym klientem, na tym samych serwerze (wlasnym) mozna isc na wschod i znalezc sie w salonie kumpla.

Wlasnie. O tym nie powiedzialem - logujac sie, trafiamy do kilku podstawowych lokacji w ciele Gracza. Tzn. jeszcze nie jestesmy postacia tylko soba. Do tych kilku podstawowych lokacji mozemy swobodnie dodawac kolejne, zmieniac ich opisy, dodawac dzwieki - tworzyc swoj maly ogrodek. Gdzies na tych lokacjach bedzie pomieszczenie z przejsciami do misji. Kiedy uzytkownik przejdzie przez takie drzwi - dostaje cialo bohatera, jezeli pierwszy raz odwiedza te misje, to swiezego, jesli wraca po przerwie - wczytanego z save'a. Misje mozna przechodzic w wiele osob, kooperatywnie albo sobie przeszkadzac. Co wiecej, gracz, u ktorego rozgrywa sie misja, nie musi w niej brac udzialu - moze robic za niewidzialnego mistrza gry. Warunek jest taki, ze najpierw musi misje przejsc solo albo byc jej autorem.

Misje to zestawy obiektow, zasobow (grafik, dzwiekow) i funkcji; pojedyncza misja to jakby jedna przygoda w tradycyjnym erpegu. Misje beda tworzone zarowno przez graczy, jak i przez oficjalna ekipe. Nic nie stoi na przeszkodzie, zeby zrobic misje-gigantyczne expowisko - ja jednak wole bardziej klimatyczne przygody, gdzie bardziej liczy sie rozmowa, rozgladanie sie, niz mechanika walki.

Wymieniac sie misjami mozna bezposrednio w grze (oprocz np. sciagniecia z sieci i wrzucenia do odpowiedniego katalogu). Na przyklad:

Kod: Zaznacz cały

Salon twojego kumpla.                            # w tym momencie znajdujemy sie na serwerze kumpla
Stoi tu twoj kumpel.
Twoj kumpel daje ci niewielka paczuszke. # i my, i paczuszka, jestesmy na serwerze kumpla
> ob niewielka paczuszke
W tej paczce znajduje sie misja zatytulowana "Grona gniewu". Zanies ja do domu i rozpakuj lub zajrzyj do srodka.
> powiedz Dzieki!
Mowisz: Dzieki!
> teleport moj_dom
Znikasz w klebach dymu.
Twoj salon.                                             # teraz jestesmy u siebie, ale paczuszka przyszla z nami
Lezy tu masa rupieci.                               # tylko czesciowo, trzeba ja dociagnac
> rozpakuj niewielka paczuszke                # czym zajmuje sie nasz serwer za naszymi plecami.
Instalowanie modulu "Grona gniewu".
Sciaganie zasobow.....
Sciaganie zrodel....
Misja zainstalowana; idz do pomieszczenia odpraw i wybierz odpowiedni wpis z ksiegi lub teleportuj sie na grona_gniewu.
>
Warstwa sieciowa nie jest przesadnie skomplikowana. Polska odmiana moze byc gwozdziem w dupie; ten aspekt jest jeszcze do dopracowania.

Wreszcie wyjawiam powod, dla ktorego chcialbym sie skontaktowac z programistami, zamieszanymi w poprzednie proby klonowania Otchlani. Jestem w stanie to zaimplementowac - kurcze, mam nawet juz troche dzialajacego kodu! - ale nie mam dosc czasu, zeby wymyslac wszystkie rozwiazania, zasady, cala mechanike. Potrzebuje z tym pomocy...

W skrocie - jesli komus pomysl sie podoba, dajcie mi znac - postawie strone, przedstawie sie, powyjasniam co trzeba i ruszymy z developerka! :) Nie sadze, zeby projekt mial zajac wiecej, niz pol roku - to znaczy z pominieciem (prawie kompletnym) tworzenia jakiegokolwiek contentu.

Pozdrawiam.

Awatar użytkownika
Weq
Posty: 1497
Rejestracja: ndz sty 09, 2005 18:54

Re: Offtopic - klony Otchlani.

Post autor: Weq » sob maja 01, 2010 15:36

Kope lat Panie "dwano_temu"... - fakt dawno :P
Welcome back
Weq
http://www.otchlan.pl - zapraszam do Otchłani.

Awatar użytkownika
MadGuy
Posty: 31
Rejestracja: pn lis 08, 2004 16:51
Kontakt:

Re: Offtopic - klony Otchlani.

Post autor: MadGuy » sob maja 01, 2010 16:01

Ale to chyba nie Corum, co? :-)

Awatar użytkownika
Weq
Posty: 1497
Rejestracja: ndz sty 09, 2005 18:54

Re: Offtopic - klony Otchlani.

Post autor: Weq » sob maja 01, 2010 16:17

Chyba jednak tak :P Jak poznales ;-)
http://www.otchlan.pl - zapraszam do Otchłani.

dawno_temu
Posty: 5
Rejestracja: sob maja 01, 2010 10:28

Re: Offtopic - klony Otchlani.

Post autor: dawno_temu » sob maja 01, 2010 16:57

...taaaak, tez mnie ciekawi, jak mnie rozpoznaliscie... :P

Za latwo troche Wam poszlo i za szybko. ;)

Ale coz - jakos tak sie zlozylo, ze po raz kolejny napadl mnie powyzszy pomysl; automatycznie przypomniala mi sie Otchlan, wiec z ciekawosci sprawdzilem... O, prosze: forum nadal dziala!

No i jestem. Tak w skrocie :)

Pzdr, CJI.

Awatar użytkownika
Weq
Posty: 1497
Rejestracja: ndz sty 09, 2005 18:54

Re: Offtopic - klony Otchlani.

Post autor: Weq » sob maja 01, 2010 17:13

No coz - ja sie zorientowalem po mejlu :).
Hihi,
Weq
http://www.otchlan.pl - zapraszam do Otchłani.

dawno_temu
Posty: 5
Rejestracja: sob maja 01, 2010 10:28

Re: Offtopic - klony Otchlani.

Post autor: dawno_temu » sob maja 01, 2010 17:24

Normalnie cheater... :P

BTW: jak juz sie chwalisz adminowaniem to moze mi powiesz, czy jakies moje stare konto sie uchowalo?

Mhm, ale tak poza przyjemnosciami - pomysl powyzej chcialbym jednak przedyskutowac. Przede wszystkim - czy uwazacie, ze komus chcialoby sie w taki twor grac?

Awatar użytkownika
Weq
Posty: 1497
Rejestracja: ndz sty 09, 2005 18:54

Re: Offtopic - klony Otchlani.

Post autor: Weq » sob maja 01, 2010 18:30

Pod Corum nie ma nikogo. A z tego forum na nethit nie było nic importowane... wiec nie.

Czy ktoś by chciał w coś takiego grac? Na pewno, tylko zależy ilu "ktosiów" stanowi satysfakcjonujący próg.

Sam pomysł ciekawy, ale piszących własne lokacje/światy/przygody byłoby sądzę niewielu wśród - i tak niewielu - graczy. Trzeba się liczyć z przyciągnięciem zwykłego gracza, który chce pograć. A jego przyciągnie wielkość świata ("content" jak to ująłeś) - i na tym bym się skupił a nie na silniku.
:P
Weq

PS. Tak swoją drogą - pamiętasz naszą korespondencję z okolic styczen-marzec 2002?
http://www.otchlan.pl - zapraszam do Otchłani.

dawno_temu
Posty: 5
Rejestracja: sob maja 01, 2010 10:28

Re: Offtopic - klony Otchlani.

Post autor: dawno_temu » sob maja 01, 2010 19:52

Ilosc i jakosc tresci to pochodna jakosci narzedzi uzywanych do jej tworzenia. Z cala pewnoscia notatnik nie wystarczy - potrzebne sa kreatory, podpowiedzi, generatory losowe oraz - to najwazniejsze - rozlegly, kompletny i wygodny zestaw bibliotek pomocniczych. Neverwinter Nights jest znakomitym przykladem - nienajlepsza gra z wyjatkowo kiepska kampania podstawowa doczekala sie olbrzymiej spolecznosci ludzi tworzacych wlasne moduly i grajacych w nie. NVN2 idzie ta sama droga, ale akurat tego nie sledze.

Nie moge sie zatem zgodzic, ze nalezy sie skupic na contencie. Seria Avernum bylaby dobrym argumentem na rzecz takiego podejscia - ale zwracam uwage, ze engine tych gier juz istnieje. Gdyby ktos juz wczesniej napisal peer-to-peer siec MUDow (bo tak mozna zdefiniowac problem od strony technicznej) - nawet bym sie nie zastanawial nad rozpoczynaniem nowego projektu. Tymczasem o ile mi wiadomo taka inicjatywa nigdzie jeszcze na swiecie nie powstala.

Im dluzej o tym mysle, tym bardziej oryginalne - i trudniejsze - mi sie to wydaje. Przeciez tak naprawde bylby to rozproszony system operacyjny (przesadzam? jesli kawalek kodu jednej instancji programu wykonuje sie w kontekscie innej instancji, na innej maszynie - to co to jest? (Oprocz problemow z bezpieczenstwem, tat is :D) ), rozproszony cache (Freenet... Ale uproszczony, bo bez prob chowania tozsamosci peerow), a to i tak tylko na samym dole, bo wyzej wznosilyby sie pluginowe biblioteki mechanik, narzedzia, na ktorych z kolei powstawalby content. Mam przed oczyma projekt calego tego systemu i jest to piekny widok - od paru dni szkicuje i powoli zaczyna mi brakowac plaskich powierzchni do rozkladania kartek.

Najgorszy moment przyjdzie niebawem - kiedy projekt trzeba bedzie przyciac do spodziewanych ram czasowych... A moze jeszcze wczesniej - kiedy prototyp zawali sie pod wlasnym ciezarem? Kto wie.

Pocieszajace jest to, ze na przyklad serwer (Twisted) wcisnalem w jeden proces z klientem (Tkinter, ale raczej pygame ostatecznie) i calosc - dziala - zajela 79 linii kodu. Kolejne dwie setki to obsluga dynamicznej interpretacji obiektow i niektore sposrod podstawowych obiektow - pomysly biore z liba Discworlda... Ciekawe, czy dam rade zrobic kompilator LPC do Pythona (jak Pyjamas, Python -> JS).

Ukonczony projekt bedzie w sobie laczyl interaktywne tekstowe srodowisko z elementami grafiki i laczenie wielu instancji tych srodowisk w jedno meta-srodowisko. Ta druga czesc to architektura pomiedzy multiplayerem Diablo o MMORPGiem. Jesli juz do niczego innego nieprzydatny, to wierze, ze program obronilby sie jako p2p IM (akurat ta czesc juz dziala)...

To zreszta moje hobby - sieci p2p - Freenet nie nadaje sie co prawda do uzytku, ale zrodla sa bardzo pouczajace, przekopalem sie przez nie z prawdziwa przyjemnoscia.

Wracajac do tematu - uwazam, ze w tego typu projekcie najwazniejszy jest design silnika, na drugim miejscu dzialajacy prototyp z chocby jedna lokacja i czesciowa implementacja mechaniki. Bez tych dwoch rzeczy nie bardzo jest o czym rozmawiac w kwestii zawartosci.

Pzdr, CJI.

Awatar użytkownika
MadGuy
Posty: 31
Rejestracja: pn lis 08, 2004 16:51
Kontakt:

Re: Offtopic - klony Otchlani.

Post autor: MadGuy » ndz maja 02, 2010 14:51

Wywołany odpowiadam.

Jak niektórzy pewnie wiedzą, na przestrzeni ostatnich lat swoje zainteresowania skierowałem w drastycznie innym kierunku niż pisanie gier czy w ogóle aplikacji. Co prawda studiuję informatykę, miałem nawet na pierwszym roku Pythona :-), o UMLa też się ocieram, ale na pewno nie jestem do tego tak zapalony, jak wtedy, kiedy byłem "bardzo młody". Piszę o tym, żeby się usprawiedliwić. Mimo że właściwie każdy z nas, jak to, Corumie, ująłeś, "expił", uważam się za osobę niedoświadczoną i właściwie laik jestem, a nie programista. However, twój projekt z pewnością jest ciekawy i wielką przyjemnością byłoby w czymś takim uczestniczyć. Nie wiem tylko, na ile potrafiłbym coś do niego wnieść. Zaangażować mogę się dopiero od lipca, bo na razie jestem zawalony szkołą i uczelnią.

Mniej więcej nakreśliłem sytuację; myślę, że uczciwie. Decyzja o tym, czy jest miejsce w "teamie" dla kogoś takiego jak ja oczywiście należy do Ciebie. W razie co, zawsze chętnie zajmę się oprawą muzyczną :-).

pzdr.

dawno_temu
Posty: 5
Rejestracja: sob maja 01, 2010 10:28

Re: Offtopic - klony Otchlani.

Post autor: dawno_temu » ndz maja 02, 2010 18:46

Jesli:
MadGuy pisze:Co prawda studiuję informatykę
to:
MadGuy pisze:na pewno nie jestem do tego tak zapalony, jak wtedy, kiedy byłem "bardzo młody".
jest oczywiste i nie musiales tego pisac. :) Moje zdanie o szkolnictwie wyzszym w nadwislanskim kraju jest niezbyt wygorowane... jednakze nie da sie tym:
MadGuy pisze:się usprawiedliwić.
;P

Prawdopodobnie Twoje zainteresowanie muzyka nie powinno byc dla mnie zaskoczeniem. Nie jest, podobnie jak nie jest przeszkoda w realizacji projektu z Twoja pomoca - odnosze wrazenie, ze odrobine zle sie zrozumielismy. Sam fakt, ze napisales takie zdanie:
MadGuy pisze:uważam się za osobę niedoświadczoną i właściwie laik jestem, a nie programista.
zdaje sie o tym swiadczyc.

Otoz nie potrzebuje pomocy przy programowaniu. Oczywiscie, gdyby ktos mi taka pomoc zaoferowal, z checia bym ja przyjal. ;) Jesli jednak - a przewiduje, ze tak bedzie w tym wypadku - nikt do pomocy sie nie zglosi, to... trudno.

[W tym miejscu bylo ~15 linijek przechwalania sie.]

Potrzebuje za to pomocy koncepcyjnej - przy projektowaniu zalozen mechaniki, ogolnego gameplay, rowniez swiata i zasobow (grafika, dzwieki). Poza tym potrzebuje publicznosci - zawsze przyjemniej jest pisac cos, na co ktos gdzies czeka. Pisanie programow (sa wyjatki) tylko dla siebie jawi mi sie technologiczna grafomania.
MadGuy pisze:Decyzja o tym, czy jest miejsce w "teamie" dla kogoś takiego jak ja oczywiście należy do Ciebie.
Miejsce - zawsze. Najpierw jednak musi taki team powstac... Na razie sle maile gdzie mi sie przypomni. Zobaczymy, co z tego wyjdzie...

Aha. Nie moge obiecac, ze projekt odniesie sukces; nie zakladalbym sie rowniez o to, czy w ogole powstanie. Jesli to jednak nastapi, gwarantuje, ze prace beda sie toczyc systematycznie i profesjonalnie. Staram sie nie robic niczego w sposob, ktory nie nadaje sie do pokazania w CV :)

Pzdr. CJI.

wisnick
Posty: 14
Rejestracja: sob mar 06, 2004 22:46
Lokalizacja: Braniewo/Gdańsk
Kontakt:

Re: Offtopic - klony Otchlani.

Post autor: wisnick » pt maja 28, 2010 23:30

O, Pan Corum. Przez moment zastanawialem sie, komu z 'blizej znanych' chcialoby sie napisac tak dlugiego posta. Nigdy bym nie strzelil, ze to Ty. Ostatnia wiadomosc jednak Ciebie zdradza, pamietam, ze zawsze duuzo cytowales innych. Niemniej jednak, witam :wink:
www.otchlan-gra.prv.pl - strona o Otchłani

ODPOWIEDZ